@charset "UTF-8";

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}
@font-face {
  font-family: "KyokashoN";
  src: url(../font/UDDigiKyokashoN-R.ttf) format("truetype");
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {
  body {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

* {
    margin: 0;
    padding: 0;
}

html{
	position:relative;
	min-height:100%;
}

body{
font-size:16px;
line-height:1.8;
}

img {border: 0px; vertical-align:bottom;}
li{list-style:none;}

div,p,ol,ul,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,img{
	margin:0;
	padding:0;
}

ol,ul,li{list-style:none;}

article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary{
display:block;
margin:0;
padding:0;
}

/* 文字揃え */
.right {text-align:right;}
.left {text-align:left;}
.center {text-align:center;}

/* フロート */
.f_r {float:right;}
.f_l {float:left;}

.clear_b {clear:both;}
.clear_r {clear:right;}
.clear_l {clear:left;}

/* リンク */
a img {border:0;}
a {text-decoration:none;color:#000;}

/* スクロールの有無によるレイアウトずれ防止 */
html {
 overflow-y:scroll;  
}

/*--------------------------
Header
--------------------------*/

header{
	position:absolute;
	top:0;
	left:0;
	z-index:10000;
	width:100%;
}

/*--------------------------
Footer
--------------------------*/

footer{
	text-align:center;
}
footer .logo{
	background-color:#203646;
	padding:20px 0;
}
footer small{
	display:block;
	background-color:#0a202e;
	color:#fff;
	font-size:12px;
	padding:15px 0;
}

footer.fixed{
	position:absolute;
	bottom:0;
	z-index:10000;
	width:100%;
}

/*--------------------------
MainVisual
--------------------------*/

#main-visual{
	background:url(../img/mv.png) no-repeat center /cover;
	width:100%;
	height:700px;
	text-align:center;
}
#main-visual .d-flex{
	width:100%;
	height:700px;
}
#main-visual.thanks-mv{
	background:none;
	width:100%;
	height:auto;
	text-align:center;
	padding:0 0 120px;
}

#main-visual.thanks-mv h2{
	padding:80px 0 0;
	margin:0 0 40px;
}
#main-visual.thanks-mv .box{
	background:url(../img/trans-white.png);
	padding:40px;
	border:solid #fff 1px;
}
#main-visual.thanks-mv .box h3{
	font-size:24px;
	line-height:1.5;
	margin:0 0 40px;
	font-family:KyokashoN;
}
#main-visual.thanks-mv .box p{
	margin:0 0 40px;
}
#main-visual.thanks-mv .box dl{
	margin:0 auto 40px;
	width:400px;
	text-align:left;
}
#main-visual.thanks-mv .box dl dt{
}
#main-visual.thanks-mv .box dl dd{
	
}

@media (max-width: 767.98px) {
#main-visual{
	height:300px;
}
#main-visual .d-flex{
	height:300px;
}
	
#main-visual.thanks-mv{
}

#main-visual.thanks-mv h2{
	padding:80px 0 0;
	margin:0 0 30px;
}
#main-visual.thanks-mv .box{
	padding:20px 0;
}
#main-visual.thanks-mv .box h3{
	font-size:18px;
	line-height:1.5;
	margin:0 0 20px;
	font-family:KyokashoN;
}
#main-visual.thanks-mv .box p{
	margin:0 0 20px;
	font-size:14px;
}
#main-visual.thanks-mv .box dl{
	margin:0 auto 20px;
	width:auto;
	text-align:left;
	font-size:14px;
}
#main-visual.thanks-mv .box dl dt{
}
#main-visual.thanks-mv .box dl dd{
	
}
}

/*--------------------------
Contents
--------------------------*/

#main01{
	text-align:center;
	padding:40px 0;
}
#main01 h3{
	font-size:24px;
	line-height:1.5;
	margin:0 0 40px;
	font-family:KyokashoN;
}
#main01 p{
	margin:0 0 40px;
}

#main02{
	margin:0 0 80px;
}
#main02 .fix{
	width:1080px;
}
#main02 article{
	
}
#main02 article .text{
	width:526px;
	position:relative;
	padding:60px 0 0;
}
#main02 article .text .present{
	float:left;
	margin:0 10px 0 0;
	text-align:center;
	width:120px;
}
#main02 article .text .present span{
	display:block;
	font-family: 'Great Vibes', cursive;
	padding:0 0 5px;
	font-size:24px;
	margin:0 0 5px;
	border-bottom:solid #333 1px;
}
#main02 article .text .present strong{
	color:#e94e6d;
	font-size:36px;
	font-family:"Yu Gothic", YuGothic;
	font-weight:bold;
}
#main02 article figure{
	width:526px;
}
#main02 article figure img{
	width:100%;
	height:auto;
}
#main02 article .text .report{
	padding:80px 0 0;
	float:right;
	width:380px;
}
#main02 article .text .report h3{
	font-size:24px;
	margin:0 0 15px;
}
#main02 article .text .report p{
	font-size:14px;
}
#main02 article.main02-article01{
	background:url(../img/bg-waku.png) no-repeat right 80px top 40px;
	padding:0 0 70px;
}
#main02 article.main02-article02{
	background:url(../img/bg-waku.png) no-repeat left 80px top 40px;
	padding:0 0 70px;
	
}
#main02 article.main02-article03{
	
}
#main02 article.main02-article03 .text{
	padding:0;
	width:1080px;
	float:none;
}
#main02 article.main02-article03 .text .report{
	width:940px;
}

#form-head{
	width:1120px;
	margin:0 auto;
}
#form-head .box{
	border-top:solid #dcdcdc 1px;
	border-left:solid #dcdcdc 1px;
	border-right:solid #dcdcdc 1px;
	text-align:center;
	padding:40px ;
	margin:0 80px;
}
#form-head .box h3{
	color:#e94e6d;
	font-size:24px;
	font-family:"Yu Gothic", YuGothic;
	font-weight:bold;
	margin:0 0 20px;
}
#form-head .box p{
	font-size:14px;
}

#form{
	background-color:#ededed;
	padding:0 0 100px;
}
#form .form-inner{
	border-left:solid #dcdcdc 1px;
	border-right:solid #dcdcdc 1px;
	border-bottom:solid #dcdcdc 1px;
	padding:0 20px 20px ;
	background-color:#fff;
	width:960px;
	margin:0 auto;
}
#form .form-inner .border-top{
	border-top:solid #dcdcdc 1px;
}
#form p.attention{
	margin:0 0 20px;
}
#form p.attention small{
	color:#e94e6d;
	font-size:12px;
	font-weight:bold;
}
#form .custom-control,#form .form-container-cont{
	margin:0 0 20px;
}
#form p.caution{
	font-size:12px;
}
#form .form-container h3{
	font-size:16px;
	margin:0 0 5px;
	line-height:1.5;
}
#form .form-container-file{
	width:80%;
	padding:15px 0;
	border:solid #dcdcdc 1px;
    margin:0 0 20px;
}
#form .form-container-file .row{
    margin-right: 0;
    margin-left: 0;
}
#form span.title{
	  -ms-flex-item-align: center!important;
    align-self: center!important;
	display:block;
	line-height:1.4;
}
#form .form-container-file .row .col{
	padding:0;
}
#form span.title.h{
	padding:8px 0 0;
}
#form span.title.ht{
	padding:12px 0 0;
}
#form .form-container-file p.caution{
	padding:10px 0 0;
	margin:0;
}
#form .form-container-row{
	margin:0 0 10px;
}
#form .form-container-row .col{
	padding:0 10px 0 0;
}
#form .form-container-row .custom-select{
	width:80%;
}

#form .form-group{
	margin:0 0 40px;
}

#form dl{
	margin:0 !important;
	padding:0;
}
#form dl dt{
	padding:0 0 0 12px;
	border-left:solid #e94e6d 5px;
	line-height:1;
	margin:0 0 20px;
	font-weight:normal;
}
#form dl dd{
	margin:0 15px;
}
#form dl dd .col{
}

#form .sub-head{
	padding:30px 0 0;
	text-align:center;
	border-bottom:solid #dcdcdc 1px;
	position:relative;
	margin:0 0 40px;
}
#form .sub-head span{
	background-color:#fff;
	display:inline-block;
	padding:0 1em;
	font-size:21px;
	position:relative;
	top:.6em;
}
	
#form hr{
	margin:10px 0 40px;
}
#form .extra .custom-control{
	padding-left: 0;
}
#form .extra h4{
	line-height:1;
	margin:0 0 10px;
	font-size:16px;
}
#form .extra p{
	margin:0 15px 10px;
	
}
#form .extra .form-container-row{
	margin:0 15px 30px;
}

#form .campaign{
	padding:0 0 40px;
}
#form .campaign button{
	background:url(../img/button.png) no-repeat center;
	width:424px;
	height:84px;
	border:none;
	color:#fff;
	font-size:24px;
	position:relative;
	outline:0;
}
#form .campaign button:active{
	opacity:.8;
}
#form .campaign button.back{
	background:url(../img/button-back.png) no-repeat center;
}
#form .campaign button:disabled{
	cursor:wait;
	opacity:.25;
}
#form .campaign button i{
	position:absolute;
	background:url(../img/button-arrow.png) no-repeat center;
	width:14px;
	height:22px;
	top:30px;
	right:30px;
}
#form .campaign button.back i{
	position:absolute;
	background:url(../img/button-arrow-l.png) no-repeat center;
	width:14px;
	height:22px;
	top:30px;
	left:30px;
}

#form .policy{
	border:solid #dcdcdc 1px;
	padding:20px 40px;
}
#form .policy h4{
	text-align:center;
	font-size:21px;
	margin:0 0 20px;
}
#form .policy ul{
	
}
#form .policy ul li{
	font-size:14px;
	padding:0 0 0 30px;
	background:url(../img/chk.png) no-repeat 0 4px;
	line-height:1.6;
	margin:0 0 10px;
}
#form .policy ul li a{
	color:#007bff;
}

form.form-confirm{
}
	
.policy-check{
	margin:0 auto;
	text-align:center;
	padding:0 0 0 30px;
}

@media (max-width: 1097.98px) {

#main02{
}
#main02 .fix{
	width:auto;
	padding:0 20px;
}
#main02 article{
	
}
#main02 article .text{
	width:auto;
	padding:20px 0 0;
	float:none !important;
}
#main02 article .text .present{
	float:none;
	margin:0 auto 20px;
	text-align:center;
	width:120px;
}
#main02 article .text .present span{
}
#main02 article .text .present strong{
}
#main02 article figure{
	width:auto;
	float:none !important;
}
#main02 article figure img{
}
#main02 article .text .report{
	float:none;
	width:auto;
	padding:0;
}
#main02 article .text .report h3{
	text-align:center;
}
#main02 article .text .report p{
	text-align:center;
}
#main02 article.main02-article01{
	background:none;
}
#main02 article.main02-article02{
	background:none;
}
#main02 article.main02-article03{
	
}
#main02 article.main02-article03 .text{
	padding:0;
	width:auto;
}
#main02 article.main02-article03 .text .report{
	width:auto;
}
	
#form-head{
	width:auto;
}
#form-head .box{
	margin:0 20px;
}
#form-head .box h3{
}
#form-head .box p{
}

#form{
	background-color:#ededed;
	padding:0 0 60px;
}
#form .form-inner{
	padding:0 20px 20px ;
	margin:0 20px;
	width:auto;
}
	
#form .form-container-file {
    width: auto;
}
	
	#form span.title{
		margin:0 0 20px;
	}
	
}
@media (max-width: 767.98px) {
	#main01 h3{
		font-size:18px;
	}
	#main01 p{
		font-size:14px;
	}
#form-head .box{
	padding:20px;
}
#form-head .box h3{
	font-size:18px;
}
#form-head .box p{
	font-size:14px;
}
.col {
    flex-basis: auto;
}
	
#form .campaign{
	padding:0 0 30px;
}
#form .campaign button{
	background:url(../img/button.png) no-repeat center /100% 100%;
	width:293px;
	height:68px;
	border:none;
	color:#fff;
	font-size:16px;
	position:relative;
}
#form .campaign button i{
	position:absolute;
	background:url(../img/button-arrow.png) no-repeat center /contain;
	width:10px;
	height:16px;
	top:25px;
	right:15px;
}
#form .campaign button.back{
	background:url(../img/button-back.png) no-repeat center /100% 100%;
	width:293px;
	height:68px;
	border:none;
	color:#fff;
	font-size:16px;
	position:relative;
}
#form .campaign button.back i{
	position:absolute;
	background:url(../img/button-arrow-l.png) no-repeat center /contain;
	width:10px;
	height:16px;
	top:25px;
	right:15px;
}

#form .policy{
	border:solid #dcdcdc 1px;
	padding:20px 20px;
}
#form .policy h4{
	font-size:18px;
}
#form .policy ul{
	
}
#form .policy ul li{
}
#form .policy ul li a{
}
	
}
