@charset "utf-8";
html body {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
html body .underline {
  text-decoration: underline;
}
html body .bold {
  font-weight: bold;
}
html body .back-yellow {
  background: #ff0;
}
html body .red {
  color: #d00021;
}
html body .small {
  font-size: 40%;
}
html body .big {
  font-size: 180%;
  line-height: 180%;
}
html body .min {
  font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}
#header{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: 100vh;/*高さを全画面にあわせる*/
} 
html body #wrapper h1{
    /*要素の配置*/
    position:absolute;
    /*要素を天地中央寄せ*/
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    /*見た目の調整*/
    color:#fff;
    text-shadow: 0 0 15px #666;
}
html body #wrapper #video-area{
    position: fixed;
    z-index: -1;
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}

html body #wrapper #video {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 177.77777778vh;
    height: 56.25vw;
    min-height: 100%;
    min-width: 100%;
}
html body #wrapper .sub-bg {
  padding: 40px 0;
  margin: 40px 0;
}

html body #wrapper .sub {
  text-align: center;
  padding: 0 ;
  margin: 0;
  font-size: 3.0em;
  line-height: 1;
  font-weight: bold;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  margin:  0 ;
  color: #fff;
}
html body #wrapper .sub-bg2 {
  padding: 40px 0;
  margin: 40px 0;
}

html body #wrapper .sub2{
  text-align: center;
  padding: 0 ;
  margin: 0;
  font-size: 3.0em;
  line-height: 1.3;
  font-weight: bold;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  margin:  0 ;
}

body #wrapper .main {
  width: 1025px;
  padding: 0;
  margin: 0 auto;
}
html body #wrapper .youtube {
  text-align: center;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}
html body #wrapper .main .bt {
  text-align: center;
  padding: 40px 0;
}
html body #wrapper .main .bt a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
html body #wrapper .main p {
  margin: 0 48px 0;
  font-size: 18px;
  line-height: 28px;
}
html body #wrapper #footer {
  background: #ccc;
  color: #FFF;
  padding: 15px 0;
}
html body #wrapper #footer .content {
  width: 880px;
  margin: 0 auto;
}
html body #wrapper #footer .content .copy {
  font-size: 10px;
  text-align: center;
}
html body #wrapper #footer .content .link {
  text-align: center;
  font-size: 11px;
  padding-bottom: 5px;
}
html body #wrapper #footer .content .link a {
  color: #FFF;
  text-decoration: none;
}

html body #wrapper .section1 {
  background:#eee;
  padding: 80px 0 100px;
}
html body #wrapper .section2 {
  background: #eee;
  text-align: center;
  padding: 40px 0 100px;
}
html body #wrapper .section3 {
  background: #fff;
  color: #000;
  padding: 40px 0 100px;
}

html body #wrapper .flex-box {
    background-color: #eee;     /* 背景色指定 */
    padding:  40px 10px;             /* 余白指定 */
    height: auto;              /* 高さ指定 */
    display: flex;              /* フレックスボックスにする */
    flex-wrap: wrap;            /* 折り返し指定 */
    align-content:stretch;      /* 折り返し時の配置指定 */
}
 
html body #wrapper .flex-item {
    padding: 15px;
    color: #000;
    margin: 25px;
    font-size: 30px;
    width: 422px;
	background: #fff;
}
html body #wrapper .flex-item-title {
  font-size: 30px;
  line-height: 34px;
  font-weight: bold;
  margin-bottom: 15px;
  text-align: center;
}
html body #wrapper .flex-item img {
    width: 100%;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin: 5px 0;
}
html body #wrapper .flex-item  p {
  margin: 0 ;
  font-size: 18px;
  line-height: 28px;
}
html body #wrapper .flex-item-last {
    padding: 15px;
    color: #000;
    margin: 25px;
    font-size: 30px;
    width: 422px;
	background: #fff;
}
html body #wrapper .flex-item-title-last {
  font-size: 30px;
  line-height: 34px;
  font-weight: bold;
  margin-bottom: 15px;
  text-align: center;
}
html body #wrapper .flex-item-last img {
    width: 100%;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin: 5px 0;
}
html body #wrapper .flex-item-last  p {
  margin: 0 ;
  font-size: 18px;
  line-height: 28px;
}

html body #wrapper .section4 {
  background: #fff;
  color: #000;
  padding: 40px 0 100px;
}
html body #wrapper .section5 {
  background: #fff;
  padding: 40px 0 100px;
}

html body #wrapper .section5-center{
text-align: center;
}

html body #wrapper .section6 {
  background:  #eff4f7 ;
  color: #000;
  padding: 40px 0 100px;
}
html body #wrapper .section6 p {
  width: 80%;
  margin: 0 auto;
  font-size: 16px;
}
.qaContainer{
margin-top: 20px;
}
.qaContainer dl {
  font-size: 18px;
  line-height: 28px;
}
.qaContainer dt {
  padding: 10px 10px 10px 35px;
  background: #207bb4;
  text-indent: -25px;
  color: #fff;
}
.qaContainer dt:before {
  content: "Q.";
  font-weight: bold;
  margin-right: 7px;
}
.qaContainer dd {
  margin: 20px 10px 40px 35px;
  text-indent: -25px;
}
.qaContainer dd:before {
  content: "A.";
  color: #207bb4;
  font-weight: bold;
  margin-right: 7px;
}
.img-center {
  display: block;
  margin: 0 auto;
}
.name{
float: right;
margin-right: 220px;
}
.animation {
  animation: large1 0.9s ease 0s infinite normal;
  -moz-animation: large1 0.9s ease 0s infinite normal;
  -webkit-animation: large1 0.9s ease 0s infinite normal;
  -ms-animation: large1 0.9s ease 0s infinite normal;
}
@keyframes large1 {
  0% {
    transform: scale(0.9) translateY(0);
  }
  100% {
    transform: scale(1.0) translateY(-5px);
  }
}
@-moz-keyframes large1 {
  0% {
    transform: scale(0.9) translateY(0);
  }
  100% {
    transform: scale(1.0) translateY(-5px);
  }
}
@-webkit-keyframes large1 {
  0% {
    transform: scale(0.9) translateY(0);
  }
  100% {
    transform: scale(1.0) translateY(-5px);
  }
}
@-ms-keyframes large1 {
  0% {
    transform: scale(0.9) translateY(0);
  }
  100% {
    transform: scale(1.0) translateY(-5px);
  }
}
.contact {
    width: 860px;
    margin: 0 auto;
    padding: 60px 60px;
    background: #fff;
}

.contact-ttl {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 40px;
    text-align: center;
}

.contact-table {
    width: 100%;
    margin-bottom: 20px;
    border: 1px solid #ccc;
}

.contact-item,.contact-body {
    padding: 20px;
    border: 1px solid #ccc;
	vertical-align: middle;
}

.contact-item {
    text-align: left;
    width: 30%;
    background-color: #eee;
}

.contact-body {
    width: 70%;
}

.form-text {
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    max-width: 400px;
}

.contact-sex + .contact-sex {
    margin-left: 10px;
}

.contact-sex-txt {
    display: inline-block;
    margin-left: 5px;
}

.form-select {
    width: 180px;
    height: 40px;
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.contact-skill {
    display: block;
}

.contact-skill + .contact-skill {
    margin-top: 10px;
}

.contact-skill-txt {
    display: inline-block;
    margin-left: 5px;
}

.form-textarea {
    width: 90%;
    padding: 10px;
    height: 200px;
    border-radius: 5px;
    border: 1px solid #ccc;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.contact-submit {
    width: 250px;
    background-color: #333;
    color: #fff;
    font-weight: bold;
    display: block;
    margin: 0 auto;
    font-size: 16px;
    padding: 15px;
    border-radius: 100vh;
    border: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
}


/* table01 */

#table01{
 margin:0 auto;
 width: 80%;
 line-height: 30px;
}

#table01 tr {
  border-bottom: 1px solid #b5b1b1;
}

#table01 th,
#table01 td {
  padding: 24px 30px;
  border: none;
  text-align:left;
}

#table01 th {
  width: 30%;
}


