@charset "utf-8 /* WebFont */
 @import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/* 全体のデザイン用 */

html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

html {
  font-size: 62.5%;
}

body {
  width: 100%;
  min-width: 1240px;
  height: auto !important;
  height: 100%;
  min-height: 100%;
  padding: 70px 0 0 0;
  position: relative;
  font-size: 1.4rem;
  left: 0;
  overflow-x: hidden;
  letter-spacing: 0.1rem;
  -webkit-text-size-adjust: 100%;
  word-break: break-all;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  z-index: -2;
  background: #f7f4ee;
}
.sp{
  display: none;
}
.pc{
  display: block;
}
@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}

@font-face {
  font-family: 'Fuiji-Font';
  src: url('https://dl.dropboxusercontent.com/s/6snqvg654tirsyv/HuiFontP109.eot');
  src: url('https://dl.dropboxusercontent.com/s/6snqvg654tirsyv/HuiFontP109.eot?#iefix') format('embedded-opentype'), url('https://dl.dropboxusercontent.com/s/7pscemjdvt0wyiq/HuiFontP109.woff') format('woff'), url('https://dl.dropboxusercontent.com/s/0w9uuopxrns8ehi/HuiFontP109.ttf') format('truetype'), url('https://dl.dropboxusercontent.com/s/xnnsbxtz8o6d98i/HuiFontP109.svg#HuiFontP109') format('svg');
  font-weight: normal;
  /* 念の為指定しておきます */
  font-style: normal;
}

body, input, textarea {
  font-family: 'HuiFontP109';
  font-size: 16px;
}

.myWebFontClass {
  font-family: 'Fuiji-Font';
}

html, body, input, button, textarea, select {
  font-family: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Avenir', 'Helvetica Neue', 'Helvetica', 'Arial', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

p {
  line-height: 3rem;
  font-size: 1.55rem;
}
.checkbox:hover,select:hover{
  cursor: pointer;
}
a:link, a:visited {
  color: #0087d6;
  text-decoration: none;
}

a:hover, a:active {
  color: #fcc800;
  transition: .3s;
}

.content {
  width: 100%;
  height: auto;
}

.wrap {
  width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
  position: relative;
}

.title--banner {
  width: 100%;
  margin: 0 0 70px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  color: #7C4921;
  font-weight: bold;
  font-family: "UD Digi Kyokasho N-B";
}

.title--banner i {
  margin: 0 8px 0 0;
  color: #ffa826;
}
.mt--60 {
  margin-top: 60px;
}
.mb--20{
  margin-bottom: 20px !important;
}

/* headerのデザイン用 */
.g-nav{
  display: none;
}
header {
  width: 100%;
  height: 70px;
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  z-index: 10;
  background: #f7f4ee;
  box-shadow: 0px -9px 7px 7px #929292;
}

header div {
  width: 1000px;
  display: flex;
  justify-content: center;
  align-items: center;
  float: none;
  margin: 0 auto;
}

header ul {
  width: auto;
  height: 100%;
  display: flex;
  align-items: center;
}

header ul li {
  width: auto;
  height: 40px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  line-height: 2rem;
}

header ul li a, header ul li a:visited, header ul li a:link {
  height: 35px;
  color: #7C4921;
  font-weight: bold;
}
header ul li a:hover{
  color:#ffa826;
}

header ul li span {
  width: 100%;
  height: 15px;
      font-size: 1.4rem;
  display: flex;
  justify-content: center;
  position: relative;
  align-items: center;
}

header ul li span:last-child {
  margin: 2px 0 0 0;
  font-size: 1.2rem;
}

.header--logo img {
  width: 100px;
  margin: 0 0 0 25px;
}

.header--logo:hover {
  transition: 0.3s;
  opacity: 0.7;
}

.header--access {
  width: 80px;
  color: #ffa826;
}

.header--access:hover {
  opacity: 0.7;
  transition: 0.3s;
}

a.header--access:link, a.header--access:visited {
  color: #ffa826;
}

.header--access i {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  float: left;
}

.header--access span {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  float: left;
}

/* メイン画像のデザイン用 */

.main--header {
  width: 100%;
  height: auto;
}

.main--cont {
  width: 1200px;
  height: 480px;
  margin: 20px auto 70px auto;
  float: none;
  position: relative;
}

.main--header img.main {
  width: 1200px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.main--cont .text--box {
  width: 100%;
  height: auto;
  float: left;
  position: absolute;
  top: 44%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  z-index: 1;
}

.main--cont .text--box h1 {
      margin: 0 10px 0 0;
      display: flex;
      justify-content: center;
      align-items: center;
      font-weight: bold;
      font-size: 3.9rem;
      color: #ffffff;
      position: relative;
          font-family: 'Fuiji-Font';
}

.main--cont .text--box p span:last-child {
  margin: 0;
}

.text--box .center {
  margin: 0 0 35px 0;
}

.text--box .center, .text--box h2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

.text--box h2 {
  color: #ffffff;
  font-size: 2.2rem;
  font-weight: bold;
      font-family: "UD Digi Kyokasho N-B";
}

.main--cont img {
  width: 200px;
  margin: 0 auto;
  float: none;
}

.main--cont img.maintest {
  width: 1200px;
  position: absolute;
  bottom: 6px;
  z-index: 2;
  animation: fadeIn 1.5s ease 0s 1 normal;
  -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/* お知らせのデザイン用 */

.news--block, .news--block ul {
  width: 100%;
  height: auto;
  float: left;
}

.news--block {
  padding: 0 20px 15px 0;
}

.news--block ul {
  width: 100%;
  max-height: 120px;
  min-height: 80px;
  padding: 0 20px 10px 0;
  float: left;
  font-size: 1.6rem;
  overflow-y: scroll;
}

.news--block ul li {
  width: 100%;
  margin: 0 0 15px 0;
  padding: 0 0 10px 0;
  display: flex;
  float: left;
  font-size: 1.6rem;
  border-bottom: 1px dashed #7C4921;
}

.news--block ul li a, .news--block ul li a:visited, .news--block ul li a:link {
  color: #7C4921;
}

.news--block ul li a:hover {
  color: #ffa826;
  transition: 0.3s;
}

.news--block .date {
  margin: 0 30px 0 0;
}
.news--blog{
  width:100%;
  min-height: 550px;
      margin: 30px 0 0 0;
  padding: 30px;
  font-size: 1.7rem;
background: #ffffff;
}
.news--blog h2{
  font-size: 2.4rem;
  color: #3db8ff;
  line-height: 3cvrem;
  margin: 10px 0 20px 0;
  padding: 0 0 10px 0;
      border-bottom: 2px dashed #bce6ff;
}
.news--date{
  font-size: 1.4rem;
}
.text--box{
  line-height: 2.8rem;
}
/* 無料体験学習のデザイン用 */

.experience--block {
  width: 100%;
  height: auto;
  margin: 50px 0 90px 0;
  float: left;
}

.experience--block .banner {
  width: 740px;
  height: 420px;
  float: left;
  background-image: url(/img/banner.jpg);
  background-size: 100%;
  overflow: hidden;
  border-radius: 10px;
}

.experience--block .banner img {
  width: 100%;
  height: 100%;
}
.experience--block .supplement{
  width: 100%;
float: left;
padding: 20px;
font-size: 1.7rem;
line-height: 2.7rem;
color: #ffffff;
font-weight: bold;
border-radius: 5px;
background: #3c5a57;
margin: 30px 0 0 0;
}
.experience--step {
  width: calc(100% - 770px);
  margin: 0 0 0 30px;
  height: 420px;
  float: left;
  position: relative;
}

.experience--step::before {
  height: 100%;
  width: 10px;
  position: absolute;
  left: 170px;
  background: #ffa826;
  content: "";
  z-index: -1;
}

.experience--step li {
  width: 100%;
  height: 120px;
  margin: 0 0 30px 0;
  padding: 20px 30px;
  float: left;
  border-radius: 10px;
  position: relative;
  background: #ffffff;
}

.experience--step li .title {
  width: 100%;
  height: auto;
  margin: 0 0 5px 0;
  font-weight: bold;
  color: #ff6f00;
  text-align: center;
  font-size: 2.3rem;
}

.experience--step li span {
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  color: #ffffff;
  font-weight: bold;
  border-radius: 50%;
  position: absolute;
  top: -15px;
  left: -15px;
  background: #ff6f00;
}

.experience--step li p {
  width: 100%;
  height: auto;
  line-height: 2.5rem;
  font-size: 1.8rem;
}

.experience--step li:last-child {
  margin-bottom: 0;
}

.subject--list {
  width: 100%;
  margin: 40px 0 0 0;
  float: left;
  display: flex;
  justify-content: center;
}

.subject--list ul {
  width: auto;
}

.subject--list ul li {
  margin: 0 19px 0 0;
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  font-weight: bold;
  color: #7C4921;
  float: left;
  background: #ffffff;
  border-radius: 30px;
}

.subject--list li img {
  width: 35px;
  float: left;
}

/* 雰囲気のデザイン用 */

.mood--block {
  width: 100%;
  height: auto;
  padding: 80px 0;
  float: left;
  background: #ffffff;
}

.mood--block ul {
  width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
  position: relative;
}

.mood--block ul li {
  width: calc(100% / 3 - 30px);
  height: auto;
  margin: 0 40px 30px 0;
  float: left
}
.mood--block ul li div{
  width:100%;
  height: 220px;
  overflow: hidden;
  border-radius: 30px;
  border: 4px solid #ffd867;
}
.mood--block ul li img {
  width: auto;
  height: 260px;
}

.mood--block ul li p {
  width: 100%;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10px 0 0 0;
  text-align: center;
  font-size: 1.9rem;
}

.mood--block ul li p span {
  margin: 0 20px;
      font-family: "UD Digi Kyokasho N-B";
}

.mood--block ul li p img {
  width: 23px;
  height: auto;
  margin: -5px 0 0 0;
  border: none;
}

.mood--block ul li p img.left {
  transform: scale(-1, 1);
}

.mood--block ul li:nth-child(3n) {
  margin-right: 0;
}

/* 雰囲気のデザイン用 */

.student--block {
  width: 100%;
  height: auto;
  padding: 80px 0;
  float: left;
}

.student--block ul {
  width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
  position: relative;
}

.student--block ul li {
  width: calc(100% / 3);
  height: 415px;
  margin: 0 0 60px 0;
  padding: 36px;
  float: left;
  position: relative;
  display: block;
}

.student--block ul li label {
  width: 120px;
  height: 40px;
  padding: 0.2em 0.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 30px;
  top: 20px;
  font-size: 2rem;
  font-weight: bold;
  box-shadow: 0px 0px 0px 5px #b2e3ff;
  border-radius: 5px;
  border: dashed 2px #ffffff;
  color: #1c93d8;
  background: #d7f1ff;
}

.student--block ul li div {
  width: 300px;
  height: 300px;
  float: left;
  border-radius: 300px;
  background: #ffffff;
}

.student--img {
  width: 100%;
  display: flex;
  justify-content: center;
}

.student--block ul li div img {
  width: 100px;
  height: 100px;
  margin: 43px 0 5px 0;
  border-radius: 80px;
}

.student--block ul li p {
  width: 300px;
  height: 195px;
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0;
  box-shadow: 0px 0px 0px 4px #ffdaa3;
  border: dashed 2px #ffffff;
  color: #7C4921;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 2.3rem;
  background: #fff6e9;
}

.student--block ul li p:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #f7f4ee #f7f4ee #ffb55a;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

.student--block ul li .student {
  width: 100%;
  margin: 10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.student--block ul li .student span {
  width: auto;
  padding: 5px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  border-radius: 30px;
  background: #ffa826;
}

.student--block ul li .student--current {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.student--block ul li .student--current span {
  font-size: 1.5rem;
  color: #828282;
}

/* アクセスのデザイン用 */

.access--block {
  width: 100%;
  height: auto;
  padding: 80px 0;
  float: left;
  background: #ffffff;
}

.access--block .cont {
  width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
  position: relative;
}

.access--block .map {
  width: 600px;
  height: 320px;
  float: left;
}

.access--block .map .clip {
  width: 600px;
  height: 530px;
  position: absolute;
  z-index: 1;
  top: 0;
}

.access--block .map span {
  position: absolute;
  top: 186px;
  left: 323px;
  z-index: 2;
}

.access--block .map span img {
  width: 30px;
}

.access--block .map p {
  margin: 0 0 0 -15px;
  font-size: 1.9rem;
  font-weight: bold;
  color: #3db8ff;
}

.access--block .access--cont {
  width: 520px;
  height: auto;
  padding: 0 0 0 20px;
  float: left;
}

.access--block .access--cont img {
  width: 100%;
  height: auto;
}

.access--block .title {
  margin: 10px 0 0 0;
      font-size: 1.6rem;
      font-weight: bold;
      color: #3db8ff;
}

.access--block p {
  font-size: 1.4rem;
}

.access--block i {
  margin: 0 5px 0 0;
}

/* 塾についてのデザイン用 */

.about--block {
  width: 100%;
  height: auto;
  margin: 0 0 80px 0;
  float: left;
}

.about--block h2 {
  width: 100%;
  height: auto;
  margin: 0 0 10px 0;
  padding: 0 0 10px 0;
  font-size: 2.5rem;
  color: #ff6f00;
  font-weight: bold;
  border-bottom: 2px dashed #eba975;
}

.about--cont {
  width: 700px;
  height: auto;
  padding: 0 0 0 40px;
  float: left;
}

.about--cont p {
  margin: 0 0 20px 0;
}

.about--cont p span.title {
  width: auto;
  height: 25px;
  margin: 0 0 10px 0;
  padding: 0 15px;
  justify-content: center;
  align-items: center;
  display: flex;
  color: #ffffff;
  background: #ff6f00;
  border-radius: 50px;
  font-weight: bold;
}
.about--cont p span{
  float: left;
  margin: 0 7px 30px 0;
}

.about--img, .about--img img {
  width: 420px;
  height: auto;
  float: left;
  border-radius: 30px;
}
/* カリキュラムのデザイン用 */

.curriculum--block {
  width: 100%;
  height: auto;
  padding: 80px 0;
  float: left;
  background: #ffffff;
}

.curriculum--block .cont {
  width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
  position: relative;
}

.conditions {
  width: 100%;
  height: auto;
  float: left;
}

.conditions p {
  width: 150px;
  float: left;
}

.conditions ul {
  width: calc(100% - 150px);
  float: left;
}

.conditions ul li {
  width: auto;
  float: left;
}

.conditions ul li, .conditions p {
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.7rem;
}

.conditions p {
  justify-content: left;
  font-weight: bold;
  color: #3db8ff;
}

.conditions--block {
  width: 100%;
  height: auto;
  margin: 0 0 15px 0;
  float: left;
}

.conditions--block.subject li {
  width: auto;
  height: auto;
  margin: 0 10px 0 0;
  padding: 5px 15px;
  font-weight: bold;
  color: #7C4921;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  border-radius: 30px;
  background: #f7f4ee;
}

.conditions--block.subject li img {
  width: 27px;
  margin: 0 3px 0 0;
  float: left;
}

.conditions .slash {
  margin: 0 5px;
}
.red{
  color:#ff4646;
  font-weight: bold;
}
.supplement{
  width:100%;
  float: left;
  font-size: 1.4rem;
  line-height: 2rem;
  margin: 5px 0;
}
.calendar--block{
  background: #ffffff;
}
.tabs ul.time--list{
  width:100%;
  display: block;
  margin: 10px 0 0 0;
  float: left;
  border: none;
}
.time--list--Title{
  width:100%;
  margin: 10px 10px 0 0;
  float: left;
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  font-weight: bold;
  color: #3db8ff;
}
.tabs ul.time--list li{
  width: auto;
  height: auto;
  margin: 0 10px 10px 0;
  padding: 8px 15px;
  border-radius: 3px;
  float: left;
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: bold;
  border: none;
  background: #3db8ff;
}
/*タブ切り替え全体のスタイル*/

.tabs {
  width: 100%;
  float: left;
  margin: 20px 0 0 0;
}

.tabs ul {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  border-left: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
}

.tabs ul:first-child {
  border-top: 1px solid #e3e3e3;
}

.tabs ul li {
  width: calc(100% / 7);
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-right: 1px solid #e3e3e3;
}

.tabs ul.category {
  border-bottom: none;
}

.tabs ul.category li {
  color: #565656;
  font-weight: bold;
  background: #f3f3f3;
}

.tab--content {
  padding: 20px 0 0 0;
  display: none;
  clear: both;
  overflow: hidden;
}

.tabs ul li.time {
  font-size: 2rem;
  font-weight: bold;
  color: #3db8ff;
}

/*タブのスタイル*/

.tab--item {
  width: calc(100%/4);
  height: 50px;
  border-bottom: 3px solid #ffa826;
  background: #f3f3f3;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  border-right: 1px solid #e3e3e3;
  cursor: pointer;
}

.tab--item:last-child {
  border: none;
}

.tab--item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/

input[name="tab--item"] {
  display: none;
}

/*選択されているタブのコンテンツのみを表示*/

#elementary1:checked~#elementary1_content, #elementary2:checked~#elementary2_content, #elementary3:checked~#elementary3_content, #elementary4:checked~#elementary4_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/

.tabs input:checked+.tab--item {
  background-color: #ffa826;
  color: #fff;
}

/* お問い合わせのデザイン用 */

.contact--block {
  width: 100%;
  min-height: 600px;
  background: #ffffff;
}

.contact--cont {
  width: 700px;
  margin: 0 auto;
  padding: 70px 0;
}

.contact--block h2 {
  height: 30px;
  margin: 30px 0 10px 0;
  display: flex;
  align-items: center;
  color: #7C4921;
  font-size: 2rem;
  font-weight: bold;
}

.contact--block input {
  width: 100%;
  height: 40px;
  margin: 10px 0 0 0;
  padding: 0 15px;
  font-size: 1.5rem;
  border: 1px solid #e3e3e3;
  border-radius: 5px;
  box-sizing: border-box;
  background: #f7f4ee;
  outline: none;
  -webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

.contact--block select {
  width: 300px;
  height: 40px;
  margin: 10px 0 0 0;
  padding: 0 10px;
  border: 1px solid #e3e3e3;
  border-radius: 5px;
  color: #555555;
  font-size: 1.5rem;
  font-weight: bold;
  background: #ffffff;
  position: relative;
  outline: none;
  -webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
/* よくある質問 */
.question--block {
  margin: 0;
  padding: 0;
}

.question--block ul {
  width: 100%;
  float: left;
}

.question--block li {
  width: calc(100% / 2 - 23px);
  margin: 0 45px 50px 0;
  position: relative;
  float: left;
}

.question--block li:nth-child(2n) {
  margin-right: 0;
}

.question--block li .question--label {
  width: 45px;
  height: 44px;
  display: flex;
  justify-content: center;
  position: absolute;
  left: -20px;
  top: -20px;
  color: #fcfcfc;
  font-size: 2.5rem;
  line-height: 4rem;
  font-weight: bold;
  border-radius: 50px;
  background: #ff6f00;
}

.question--block p.question--title {
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.2rem;
  line-height: 2.7rem;
  font-weight: bold;
  color: #7C4921;
  border-radius: 5px 5px 0 0;
  background: #ffdcbe;
}

.question--block p {
  width: 100%;
  height: 150px;
  padding: 25px;
  float: left;
  font-size: 1.8rem;
  letter-spacing: 0.025rem;
  line-height: 3rem;
  border-radius:0 0 5px 5px;
  background: #ffffff;
}

.question--block p span {
  padding: 0 10px 0 0;
  font-size: 2.5rem;
  font-weight: bold;
  color: #3db8ff;
}

select::before{
  margin-right: 5px;
          content: "\f3c5";
      color: #555e64;
      font-family: "Font Awesome 5 Free";
}

.contact--block textarea {
  width: 100%;
  height: 100px;
  margin: 0 0 30px 0;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #e3e3e3;
  border-radius: 5px;
  font-size: 1.5rem;
  background: #f7f4ee;
  outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.contact--box{
  width:100%;
  height: auto;
  margin: 50px 0 0 0;
      padding: 30px 20px;
  color:#3db8ff;
  background: #e4f5ff;
  border: 2px solid #3db8ff;
  border-radius: 10px;
}
.contact--box p{
  width:100%;
  margin: 0 !important;
  font-size: 2rem;
  text-align: center;
}
.contact--box p:first-child{
  color:#3db8ff;
}
.contact--box span{
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact--box a{
  margin: 15px 0 ;
  font-size: 2.9rem;
  font-weight: bold;
}
.contact--box a:link, .contact--box a:visited{
  color:#3db8ff;
}
.contact--block input.checkbox{
  width: 20px;
      height: 32px;
      position: relative;
      background: #ffffff;
}
.check--label{
  margin: 0 20px 0 10px;
  position: relative;
bottom: -6px;
}
.contact--block select.day--select{
  width: 60px;
  height: 33px;
  margin: 10px 12px 0 12px;
}
.contact--block select.day--select:disabled{
  background: #efefef;
}
.day--text{
  font-size: 1.5rem;
      position: relative;
      bottom: -6px;
}
.contact--block input.checkbox:checked::before {
    background: #3db8ff;
    width: 18px;
    height: 18px;
    content: "";
    left: 6.5px;
    top: 6.5px;
    border-radius: 3px;
    position: absolute;
}
.label--required {
  margin: 0 0 0 5px;
  padding: 2px 12px;
  border-radius: 50px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: bold;
  background: #ff4646;
}

.btn--block.two .send--btn {
  margin: 0 15px 0 0;
}

.btn--block.two .send--btn:last-child {
  margin: 0;
}

.btn--block {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contact--block p, .contact--block h4 {
  margin: 0 0 20px 0;
  font-size: 1.9rem;
  line-height: 2.2rem;
  font-weight: bold;
  color: #7C4921;
}

.formTable {
  font-size: 1.5rem;
  line-height: 2rem;
}
.formTable dd{
  font-size: 1.5rem;
  color: #575757;
  font-weight: bold;
  -webkit-margin-start: 0;
}
.formTable dd:nth-child(1),.formTable dd:nth-child(4),.formTable dd:nth-child(7),.formTable dd:nth-child(10)
,.formTable dd:nth-child(13),.formTable dd:nth-child(16),.formTable dd:nth-child(19),.formTable dd:nth-child(22)
{
  margin: 20px 0 3px 0;
  font-size: 1.7rem;
  color: #ffa826;
}
.contact--block p.error_messe {
  font-size: 1.7rem;
  color: #ff4646;
  text-align: left;
}
.thanks{
  font-size: 2rem;
  line-height: 2.6rem;
}
input.send--btn {
  width: 250px;
  height: 50px;
  margin: 0 15px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  font-size: 1.7rem;
  font-weight: bold;
  color: #3db8ff;
  border: 2px solid #3db8ff;
  background: none;
  cursor: pointer;
}

input.send--btn:hover {
  transition: 0.3s;
  color: #ffffff;
  background: #3db8ff;
}

/*追尾するお問い合わせボタン*/

.side--contact {
  width: 80px;
  height: 170px;
  position: fixed;
  bottom: 30px;
  right: -15px;
  font-size: 1.8rem;
  color: #ffffff;
  border-radius: 10px 0 0 10px;
  z-index: 10;
  background: #3db8ff;
}

.side--contact:hover {
  transition: 0.4s;
  right: 0;
}

.side--contact i {
  width: 10px;
  margin: 0 0 5px 0;
}

.side--contact a, .side--contact a:hover, .side--contact a:link, .side--contact a:visited {
  width: 20px;
  padding: 0 23px;
  color: #ffffff;
  letter-spacing: 1.5rem;
  margin: 0 0 0 -10px;
}

footer {
  width: 100%;
  height: auto;
  margin: 46px 0 0 0;
  display: block;
  overflow: hidden;
  float: left;
}

footer ul {
  width: 100%;
  height: 40px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

footer li {
  float: left;
  margin: 0 20px 0 0;
  text-align: center;
  line-height: 4rem;
  cursor: pointer;
}

footer li:last-child {
  margin: 0;
}

footer li:hover a {
  color: #fcc800 !important;
  transition: 0.2s;
}

footer li a {
  width: 100%;
  height: 100%;
  float: left;
  font-size: 1.4rem;
}

footer li a:link, footer li a:visited {
  color: #282828;
}

.footer--contact {
  height: 70px;
  background: #ffa826;
}

footer div {
  width: 100%;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  background: #ff6f00;
}
.footer--img{
  width:1200px;
  margin: 0 0 -4px 0;
  position: relative;
  left: 130px;
}
