@charset "UTF-8";
/* CSS Document */
/***********************************
 Utility
***********************************/
.text-official {
  color: #FDA559; }

.text-white {
  color: white; }

.text-beige {
  color: #FFF3E8; }

.text-pink {
  color: #F67D8C; }

.text-blue {
  color: #72B7E4; }

.text-brown {
  color: #500505; }

.text-yellow {
  color: yellow; }

.text-green {
  color: #86BC43; }

.text-red {
  color: red; }

.bg-official {
  background-color: #FDA559 !important; }

.bg-white {
  background-color: white; }

.bg-beige {
  background-color: #FFF3E8; }

.bg-pink {
  background-color: #F67D8C; }

.bg-green {
  background-color: #86BC43; }

.bg-blue {
  background-color: #72B7E4; }

.bg-brown {
  background-color: #500505; }

.bg-white-tp {
  background-color: rgba(255, 255, 255, 0.75); }

.border-official {
  border-color: #FDA559 !important; }

.border-white {
  border-color: white !important; }

.border-beige {
  border-color: #FFF3E8 !important; }

.border-pink {
  border-color: #F67D8C !important; }

.border-green {
  border-color: #86BC43 !important; }

.border-blue {
  border-color: #72B7E4 !important; }

.border-brown {
  border-color: #500505 !important; }

.border-10 {
  border-width: 10px !important; }

.border-20 {
  border-width: 20px !important; }

.mincho {
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif; }

.wf-roundedmplus1c {
  font-family: "M PLUS Rounded 1c"; }

.w-20 {
  width: 20% !important; }

.w-30 {
  width: 30% !important; }

.w-40 {
  width: 40% !important; }

.w-60 {
  width: 60% !important; }

.w-70 {
  width: 70% !important; }

.w-80 {
  width: 80% !important; }

/***********************************
 link
***********************************/
a {
  text-decoration: none; }

a.link-white {
  color: white; }
  a.link-white:hover {
    color: yellow; }

a.link-official {
  color: #FDA559; }
  a.link-official:hover {
    color: #F67D8C; }

a.slowly {
  transition: 0.8s; }
  a.slowly:hover {
    transition: 0.5s; }

/***********************************
 Common
***********************************/
.wrapper {
  position: relative;
  width: 100%;
  overflow: hidden; }

dl.dl-horizontal {
  padding: 0;
  margin: 0;
  width: 100%; }
  dl.dl-horizontal dt, dl.dl-horizontal dd {
    padding: 0;
    margin: 0; }
  dl.dl-horizontal dt {
    float: left;
    width: 100px;
    font-weight: normal;
    padding-left: 5px; }
  dl.dl-horizontal dd {
    display: block;
    padding-left: 110px;
    width: auto;
    font-weight: normal;
    border-bottom: 1px dashed white;
    margin-bottom: 10px; }

.flex-center {
  display: flex;
  justify-content: center;
  align-items: center; }

.general-w {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto; }

@media (max-width: 767px) {
  .general-w {
    width: auto; } }
.fuchidori {
  text-shadow: 0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;
  /*    padding: 10px;
      font-weight: bold;
      font-size: 100px;
      -webkit-text-stroke: 2px #FFF;
      position: relative;
      margin: 0;*/ }

/***********************************
 Header
***********************************/
.header-logo img {
  width: 300px; }

/***********************************
 MainVisual
***********************************/
.main-visual {
  height: 100vh;
  width: 100%;
  background-image: url("../images/main_bg.jpg");
  background-position: center center;
  background-size: cover; }

@media screen and (max-width: 992px) {
  .main-visual {
    height: 75vh;
    padding-top: 3rem;
    padding-bottom: 3rem; } }
/***********************************
 Section
***********************************/
/***********************************
 Introduction
***********************************/
.intro-bg {
  height: 800px;
  background-image: url("../images/intro_bg.jpg");
  background-position: bottom center;
  background-size: contain;
  background-repeat: no-repeat; }
  .intro-bg p {
    font-size: 1.5rem; }

@media screen and (max-width: 992px) {
  .intro-bg {
    height: 400px; }
    .intro-bg p {
      font-size: 1.2rem; } }
/***********************************
 Merit
***********************************/
.merit-list {
  vertical-align: top; }
  .merit-list .merit-box {
    display: inline-block;
    vertical-align: top;
    width: 300px;
    margin-bottom: 10px; }
    .merit-list .merit-box .merit-title {
      height: 100px;
      background-color: #FDA559;
      color: white;
      text-align: center; }
    .merit-list .merit-box .merit-desc {
      border: 1px solid #FDA559;
      height: 100px; }

/***********************************
 Footer
***********************************/
.footer-link img {
  width: 300px; }

/************************************
 form
************************************/
table.mail-form {
  text-align: center;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  width: auto;
  border-top: 1px solid white; }
  table.mail-form td, table.mail-form th {
    padding: 10px;
    border-bottom: 1px solid #FDA559;
    text-align: left; }
  table.mail-form th {
    white-space: nowrap;
    font-weight: normal; }
    table.mail-form th label {
      margin-right: 5px; }
    table.mail-form th .badge {
      color: red; }
  table.mail-form td {
    width: auto; }
  table.mail-form textarea {
    width: 100%; }
  table.mail-form .BtnArea {
    border-bottom: none; }
  table.mail-form .SubLabel {
    margin-right: 5px; }
  table.mail-form .BtnArea {
    margin-top: 3rem;
    text-align: center; }

input.FormControl,
textarea.FormControl,
select.FormControl {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #FFFFFF;
  background-image: none;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  font-size: 1em;
  padding: 0.4em 0.8em;
  margin-top: 2px;
  margin-bottom: 2px;
  width: 350px; }

input.FormControl,
textarea.FormControl,
select.FormControl {
  border: 1px solid rgba(0, 0, 0, 0.32);
  box-shadow: none;
  outline: none; }

input.ShortWidth {
  width: 150px; }

@media screen and (max-width: 992px) {
  table.mail-form th, table.mail-form td {
    padding: 0px;
    display: block;
    width: 100% !important; }
  table.mail-form th {
    border-bottom: none;
    background-color: #FDA559;
    padding-left: 5px; }
    table.mail-form th.req {
      background-color: #FDA559; }
    table.mail-form th label {
      margin-bottom: 0px;
      line-height: 2.0; }
  table.mail-form td {
    margin-bottom: 2rem;
    border-bottom: none; }

  input.FormControl,
  textarea.FormControl {
    width: 100%; }

  input.FormControl.ShortWidth {
    width: 50%; } }
input.Req {
  border: 1px solid #FFD0AD !important; }

input.Req :focus {
  border: 1px solid #FFAE00 !important; }

.FormAlert {
  text-align: center;
  background-color: red;
  color: white;
  padding: 2rem;
  margin-bottom: 2rem;
  border-radius: 5px; }

.ValidErr {
  color: red; }

.FormControlStatic {
  padding: 0;
  margin: 0;
  margin-bottom: .5rem;
  font-size: 1.0rem; }
