@charset "UTF-8";
/*
Theme Name: expo20
Template: twentyseventeen
*/

/*
#1e3cc7 rgba(30,60,199,1.0)
#d8df21 rgba(216,223,33,1.0)
#D8342E rgba(216,52,46,1.0)
#333 rgba(51,51,51,1.0)
*/

/* common
---------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}
table{border-collapse:collapse;border-spacing:0;}
img{vertical-align:baseline;border:0 none;}
ul,ol,li{list-style:none;}
strong{font-weight:700;color:inherit;}
em{font-style:normal;font-weight:500;color:inherit;}

/* HTML5 */
header, section, footer, aside, nav, article, figure, figcaption{margin:0;padding:0;display:block;}
canvas{display:block;vertical-align:bottom;}
/* IE8+, Chrome */
input,button{outline:0;}
/* Firefox */
input::-moz-focus-inner,button::-moz-focus-inner{border:0;}


:root{
  --outer-height: 100vh;
}
.vh100{
  height: var(--outer-height);
}

/* base */
html{
  width:100%;
  margin: 0;
  padding:0;
  background:#fff;
  color:#333;
  font-size:62.5%;
  line-height:1.0;
  -webkit-tap-highlight-color:rgba(51,51,51,0.16);
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
  /*-webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;*/
}
body{
  margin: 0;
  padding:0;
  font-size:18.0px;
  font-size:1.8rem;
  letter-spacing:0.07em;
  line-height:1.75;
  font-family: "UD新ゴNT L","UD Shin Go NT Light",sans-serif; 
  /*font-family: "UD新ゴNT M","UD Shin Go NT Medium",sans-serif;*/
  font-feature-settings:"palt";
  box-sizing:border-box;
  min-height: var(--outer-height);
  position: relative;
}
::selection{background:rgba(51,51,51,0.16);}
::-moz-selection{background:rgba(51,51,51,0.16);}
@media (max-width:1280px){

}
@media (max-width:960px){
body{
  font-size:15.6px;
  font-size:1.56rem;
}
}
@media (max-width:768px){
body{
  font-size:14.6px;
  font-size:1.46rem;
  line-height:1.6;
}
}
@media (max-width:480px){
body{
  /*font-size:13.4px;
  font-size:1.34rem;*/
}
}


/* link */
a{color:inherit;text-decoration:none;outline:none;line-height:inherit;display:inline-block;
  -webkit-transition:all 0.2s ease-out 0s;
  transition:all 0.2s ease-out 0s;
}
a:hover{color:inherit;opacity:0.8;text-decoration:none !important;}
.a{display:inline-block;position:relative;line-height:1.4;padding-left:1px;padding-right:1px;}
.a:after{position:absolute;bottom:0;left:0;content:"";display:inline-block;width:100%;height:1px;border-bottom:solid 1px currentColor;opacity:0.3;}
.a:hover:after{opacity:0.86;}
a img{ background:none !important}
a:hover img{
  background:none !important;
  opacity:0.8;
  filter:alpha(opacity=80);
  -ms-filter:"alpha( opacity=80 )";
}
*:focus{outline:none !important;}
.cf:before,.cf:after{content:"";display:table;}
.cf:after{clear:both;}
.cf{*zoom:1;}
.fl{float:left !important;}
.fr{float:right !important;}
.cb{clear:both !important;}
.tc{text-align:center;}
.tr{text-align:right;}
.tl{text-align:left !important;}
br{height:0;width:0;line-height:0;}
.nobr{display:none;}
.mt0{margin-top:0 !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt50{margin-top:50px !important;}
.mt60{margin-top:60px !important;}
.mt70{margin-top:70px !important;}
.mt80{margin-top:80px !important;}
.mt90{margin-top:90px !important;}
.mt100{margin-top:100px !important;}
.mt120{margin-top:120px !important;}
.mb0{margin-bottom:0 !important;}
/*.pt80{padding-top:80px !important;}*/
@media (max-width:1280px){
br.br1280{display:block;}
.nobr1280{display:none;}
}
@media (max-width:960px){
br.br960{display:block;}
.nobr960{display:none;}
.mt70{margin-top:60px !important;}
.mt80{margin-top:60px !important;}
.mt90{margin-top:60px !important;}
.mt100{margin-top:60px !important;}
.mt120{margin-top:60px !important;}
}
@media (max-width:768px){
br.br768{display:block;}
.nobr768{display:none;}
}
@media (max-width:600px){
br.br600{display:block;}
.nobr600{display:none;}
}
@media (max-width:480px){
br.br480{display:block;}
.nobr480{display:none;}
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?9thei1');
  src:  url('fonts/icomoon.eot?9thei1#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?9thei1') format('truetype'),
    url('fonts/icomoon.woff?9thei1') format('woff'),
    url('fonts/icomoon.svg?9thei1#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-play:before {
  content: "\e912";
}
.icon-link:before {
  content: "\e9cb";
}
.icon-arrow-right2:before {
  content: "\ea3c";
}
.icon-circle-up:before {
  content: "\ea41";
}
.icon-mail2:before {
  content: "\ea84";
}
.icon-mail4:before {
  content: "\ea86";
}
.icon-youtube:before {
  content: "\ea9d";
}
.icon-file-pdf:before {
  content: "\eadf";
}


.w{
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  min-height: var(--outer-height);
  z-index: 1;
}

.page{
  box-sizing: border-box;
  min-height: var(--outer-height);
  padding:40px 0 40px;
  /*padding:10px 0 40px;*/
  margin:0 auto;
}
.page .w1180{
  height: 100%;
  width:1180px;
  max-width: 100%;
  margin:0 auto;
  padding:0 3%;
  box-sizing: border-box;
}
.page #header .w1180{
  border-top:solid 12px #1e3cc7;
}
.page .last.w1180{
  border-bottom:solid 12px #1e3cc7;
}
.page .h1_logo01{
  padding:30px 0;
}

.newsflash_w{
  max-width: 100%;
  box-sizing: border-box;
  padding:0.1em 1em;
  background: rgba(216,223,33,0.8);
  position: absolute;
  top: 0;
  left: 0;
  width: 100% ;
  overflow: hidden;
  font-size: 0.76em;
}
.newsflash{
  display: inline-block;
  color:#1e3cc7;
}
.marquee{
	display: inline-block;
	white-space: nowrap;
	padding-left: 100%;
	-webkit-animation-name: marquee;
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-duration: 90s;
	animation-name: marquee;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-duration: 90s;
}
@-webkit-keyframes marquee {
  from   { -webkit-transform: translate(0%);}
  99%,to { -webkit-transform: translate(-100%);}
}
@keyframes marquee {
  from   { transform: translate(0%);}
  99%,to { transform: translate(-100%);}
}

#footer{
  position: absolute;
  bottom:0;
  left: 0;
  z-index: 10;
  width: 100%;
}
.copyright{
  font-size: 1.05rem;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.04em;
  text-align: right;
  padding:0.5em 2em;
}
#guide .copyright{
  color: rgba(51,51,51,0.6);
}

/*.inner{
  margin:0 4%;
}
#header .inner{
  padding:30px 0 8px;
}
#footer .inner{
  padding:30px 0 0;
}
.main .inner{
  padding:70px 0;
}
.main .inner img{
  max-width: 100%;
  height: auto;
}
.w1480{
  width:1480px;
  max-width: 100%;
  margin:0 auto;
}
.w880{
  width:880px;
  max-width: 100%;
  margin:0 auto;
}*/
@media (max-width:1280px) {

}
@media (max-width:960px) {

}
@media (max-width:768px) {

}
@media (max-width:600px) {

}
@media (max-width:480px) {
.page{
  padding:10px 0 55px;
}
}


.h1_ttl{
  font-family: "UD新ゴNT M","UD Shin Go NT Medium",sans-serif;
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.h2_ttl{
  font-family: "UD新ゴNT M","UD Shin Go NT Medium",sans-serif;
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.h3_ttl{
  font-family: "UD新ゴNT M","UD Shin Go NT Medium",sans-serif;
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.st01{
  font-family: "UD新ゴNT M","UD Shin Go NT Medium",sans-serif;
  /*-webkit-font-smoothing:subpixel-antialiased;
  font-smoothing:subpixel-antialiased;
  -moz-osx-font-smoothing: auto;*/
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.s01{
  font-size: 0.8em;
  opacity: 0.86;
}

.btn01_a,
.btn01 input[type="submit"]{
  display: block;
  width: 400px;
  max-width: 90%;
  padding:0.8em 30px;
  background: #d8df21;
  color: #1e3cc7;
  font-size: 1.2em;
  font-weight: bold;
  box-sizing: border-box;
  line-height: 1.0;
}
.btn02_a{
  display: block;
  width: 300px;
  max-width: 90%;
  padding:0.8em 30px;
  color: #d8df21;
  font-weight: bold;
  box-sizing: border-box;
}
.btn01_a.icon-arrow-right2:before,
.btn02_a.icon-arrow-right2:before{
  padding-right:1em;
  vertical-align: -0.1em;
}


.form .table01{
  margin:0 auto;
  text-align: left;
  border-collapse: separate;
  border-spacing:0 4px;
  color: #1e3cc7;
}
.form .table01 tr{
  background: rgba(255,255,255,0.86);
}
.form .table01 th{
  position: relative;
  padding-left:1em;
  padding-top:0.6em;
  line-height: 1.4;
  width: 140px;
  vertical-align: top;
}
.form .table01 th:after{
  position: absolute;
  right:0;
  top:50%;
  content: "";
  display: block;
  height: 60%;
  width: 1px;
  background: rgba(30,60,199,0.4);
  transform: translateY(-50%);
}
.form .table01 th .hissu{
  position: absolute;
  right:0.1em;
  bottom:0;
  color:rgba(148,10,28,1.0);
  transform: translateY(-50%) scale(0.6);
}
.form .table01 td{
  text-align: left;
}
input, button, textarea, select {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.form .table01 input[type="text"],
.form .table01 input[type="tel"],
.form .table01 input[type="email"]{
  height: 50px;
  width: 100%;
  padding:0 0.5em;
  box-sizing: border-box;
  color:rgba(0,0,0,0.96);
  /*font-weight: bold;*/
}
.form .table01 input[type="text"]#zip{
  width: 200px;
  padding:0 0.5em;
  box-sizing: border-box;
}
.form .table01 span.source,
.form .table01 span.purpose,
.form .table01 span.join{
  padding:0.5em 0 0 0.5em;
  display: inline-block;
}
.form .table01 span.source_txt,
.form .table01 span.purpose_txt,
.form .table01 span.join_txt{
  width: calc(100% - 150px) !important;
  height: 40px !important;
  position: relative;
  margin:0 0.5em;
  display: inline-block;
}
.form .table01 span.source_txt input[type="text"],
.form .table01 span.purpose_txt input[type="text"],
.form .table01 span.join_txt input[type="text"]{
  height: 40px !important;
}
.form .table01 span.source_txt:before,
.form .table01 span.purpose_txt:before,
.form .table01 span.join_txt:before{
  content:"{";
  position: absolute;
  top:0;
  left:0;
}
.form .table01 span.source_txt:after,
.form .table01 span.purpose_txt:after,
.form .table01 span.join_txt:after{
  content:"}";
  position: absolute;
  top:0;
  right:0;
}
.form .table01 .textarea_w{
  height: 160px !important;
}
.form .table01 textarea{
  height: 160px;
  width: 100%;
  padding:0 0.5em;
  box-sizing: border-box;
  color:rgba(0,0,0,0.96);
  /*font-weight: bold;*/
}
.form .table01 input[type="text"]:focus,
.form .table01 input[type="tel"]:focus,
.form .table01 input[type="email"]:focus,
.form .table01 textarea:focus{
  background: rgba(216,223,33,0.3);
  border-left:solid 4px rgba(216,223,33,1.0);
}
.form input[type="checkbox"]{
  position: relative;
}
.form input[type="checkbox"]:before {
  content: "";
  display: block;
  position: absolute;
  bottom:0;
  right:0;
  width: 10px;
  height: 10px;
  border: 1px solid rgba(0,0,0,0.4);
  border-radius: 2px;
}
.form .agreement input[type="checkbox"]:before {
  border: 1px solid rgba(255,255,255,0.4);
}
.form input[type="checkbox"]:checked:after {
  content: "";
  display: block;
  position: absolute;
  bottom:3px;
  right:0;
  width: 6px;
  height: 12px;
  -webkit-transform: rotate(40deg);
  transform: rotate(40deg);
  border-bottom: 2px solid rgba(0,0,0,0.9);
  border-right: 2px solid rgba(0,0,0,0.9);
}
.form .agreement input[type="checkbox"]:checked:after{
  border-bottom: 2px solid rgba(216,223,33,0.9);
  border-right: 2px solid rgba(216,223,33,0.9);
}  
.form .table01 .wpcf7-list-item{
  margin-right:2em;
  display: inline-block;
}
.form .table01 .wpcf7-list-item.last{
  display: block;
  width: 100px;
}
.form input[type="submit"]{
  margin:0 auto;
}
.agreement{
  color:rgba(255,255,255,1.0);
  margin: 1em 0;
}
div.wpcf7-mail-sent-ok {
  background: rgba(30,60,199,0.9) !important;
  border: none !important;
}
div.wpcf7-mail-sent-ng{
  border: 2px solid rgba(216,223,33,0.9) !important;
}
div.wpcf7-spam-blocked {
  border: 2px solid rgba(216,223,33,0.9) !important;
}
div.wpcf7-validation-errors {
	border: 2px solid rgba(216,223,33,0.9) !important;
}
div.wpcf7-response-output{
  color:#fff !important;
  border: 2px solid rgba(216,223,33,0.9) !important;
  text-align: left;
  padding:0.2em 1em !important;
  margin: 0 0.5em 1em !important;
}
.wpcf7-form-control-wrap{
  position: relative;
}
.wpcf7-not-valid-tip{
  margin-top:4px;
  border:solid 2px rgba(148,10,28,1.0);
  border-radius: 2px;
  padding:0.2em 1em 0.2em 1.6em !important;
  text-align: left;
  display: inline-block !important;
  color:rgba(148,10,28,1.0) !important;
  line-height: 1.0em;
  font-size: 1.2rem !important;
}
@media (max-width:768px) {
.form .table01,
.form .table01 tbody,
.form .table01 tbody tr{
  display: block;
  width: 100% !important;
}
.form .table01 tr{
  margin-bottom: 4px;
}
.form .table01 th{
  display: block;
  width: 100%;
  font-weight: bold;
  box-sizing: border-box;
  padding-bottom: 0.5em;
}
.form .table01 th:after {
  position: absolute;
  right: auto !important;
  left:0;
  top: auto !important;
  bottom:0;
  content: "";
  display: block;
  height: 1px;
  width: calc(100% - 40px);
  background: rgba(30,60,199,0.4);
  transform: translateY(-50%);
}
.form .table01 th br{
  display: none;
}
.form .table01 th span {
  right:-1em;
}
.form .table01 td{
  display: block;
}
}

