@media screen and (min-width: 769px) {
	
	/*---------------------------------------
	 * PagaHead
	---------------------------------------*/ 
	
	.pagehead{
		width: 100%;
		padding: 80px 0;
	}
	.pagehead .inner{
		width: calc(100% - 40px);
		max-height: 900px;
		margin: 0 auto;
	}
	.pagehead .inner .title-box{
		margin: 0 0 30px;
	}
	.pagehead .inner .title-box .en{
		font-size: 3.2rem;
		text-align: center;
		color: #1C9888;
		letter-spacing: 1px;
		margin: 0 0 15px;
	}
	.pagehead .inner .title-box .ja{
		text-align: center;
		font-size: 1.3rem;
	}
	.pagehead .inner .read{
		text-align: center;
	}
	
	
	/*---------------------------------------
	 * FormSection
	---------------------------------------*/ 	
	
	.form-section{
		width: 100%;
		background: #F2F4F4;
		padding: 80px 0;
		color: #808080;
	}
	.form-section .wrap{
		width: calc(100% - 40px);
		max-width: 900px;
		margin: 0 auto;
		padding: 80px 6%;
		background: #FFFFFF;
		box-sizing: border-box;
	}
	
	
	/* Schedule
	---------------------------------------*/ 
	
	.schedule{
		text-align: center;
		line-height: 1.8;
		margin: 0 0 40px;
		border: 1px solid #CCCCCC;
		box-sizing: border-box;
		padding: 10px;
	}
	.schedule .midashi,
	.schedule .read{
		margin: 0 0 1em;
	}
	.schedule .notice{
		font-size: 1.2rem;
	}
	
	/* Flow
	---------------------------------------*/ 
	
	.form-section .flow{
		margin: 0 0 35px;
	}
	
	.form-section .flow ul{
		display: flex;
		justify-content: space-between;
	}
	.form-section .flow ul li{
		width: 28%;
		text-align: center;
		font-size: 1.2rem;
		font-weight: 700;
		position: relative;
	}
	.form-section .flow ul li span{
		display: block;
		width: 100%;
		background: #F2F4F4;
		padding: 20px 0;
	}
	.form-section .flow ul li.current span{
		background: #1C9888;
		color: #FFFFFF; 
	}
	.form-section .flow ul li:nth-child(1)::after,
	.form-section .flow ul li:nth-child(2)::after{
		content:"→";
		display: block;
		width: 23px;
		height: 23px;
		line-height: 23px;
		border-radius: 50%;
		background: #F2F4F4;
		position: absolute;
		top:0;
		bottom:0;
		right: -20%;
		margin: auto;
	}
	
	/* Attention
	---------------------------------------*/ 	
	
	.form-section .attention{
		margin: 0 0 30px;
	}
	
	
	/* FormStyle
	---------------------------------------*/ 		
	
	.form-section dl{
		display: table;
		width: 100%;
		line-height: 1.6;
		margin: 0 0 15px;
	}
	.form-section dl dt{
		display: table-cell;
		width: 144px;
		font-size: 1.3rem;
		vertical-align: top;
		padding-top: 10px;
	}
	.form-section dl dd{
		display: table-cell;
		width: calc(100% - 144px);	
		vertical-align: top;
	}
	.pt0{
		/*padding-top: 0 !important;*/
	}
	.form-section dl dd .notice{
		font-size: 1.1rem;
	}
	
	/* InputStyle
	---------------------------------------*/ 
	
	.input{
		border: 2px solid #B3B3B3;
		border-radius: 5px;
		background: #ffffff;
		padding: 10px 8px 10px 8px;
		box-sizing: border-box;
	}
	.input.icon{
		padding: 10px 38px 10px 8px;
		background: url(../../assets/img/icon_calendar.svg) right 5px center no-repeat;
		background-size: 18px;
	}
	.ie11 .input.icon{
		background: url(../../assets/img/icon_calendar.svg) right -35px center no-repeat;
		background-size: 100px;
	}
	.long{
		width: 100%;
		max-width: 330px;
		height: auto;
		max-height: 38px;
	}
	.medium{
		width: calc(28% - 4.5em);
		max-width: 330px;
	}
	.mfp_rows{
		display: flex;
		justify-content: space-between;
		width: 100%;
		max-width: 330px;
	}
	.mfp_col{
		width: 48%;
	}
	
	
	/* RadioButton
	---------------------------------------*/ 
	
	.radio-block{
		padding: 6px 0;
	}
	.radio{
		display: inline-block;
		margin-right: 10px;
	}
	.radio input{
		position: relative;
		top:-2px;
	}
	
	
	
	/* SelectBox
	---------------------------------------*/ 
	
	.selectWrap {
	  overflow: hidden;
	  width: 100%;
	  max-width: 330px;
	  box-sizing: border-box;
	  display: inline-block;
	  vertical-align: middle;
	}
	.selectWrap select {
	  width: 100%;
	  padding-right: 1em;
	  cursor: pointer;
	  text-indent: 0.01px;
	  text-overflow: ellipsis;
	  border: none;
	  outline: none;
	  background: transparent;
	  background-image: none;
	  box-shadow: none;
	  -webkit-appearance: none;
	  appearance: none;
	}
	.selectWrap select::-ms-expand {
	  display: none;
	}
	.selectWrap.cp_sl04,
	.selectWrap.cp_sl05 {
	  position: relative;
	  border: 2px solid #B3B3B3;
	  border-radius: 5px;
	  background: #ffffff;
	}
	.selectWrap.cp_sl04::before {
	  position: absolute;
	  top: 0.8em;
	  right: 0.8em;
	  width: 0;
	  height: 0;
	  padding: 0;
	  content: '';
	  border-left: 6px solid transparent;
	  border-right: 6px solid transparent;
	  border-top: 6px solid #808080;
	  pointer-events: none;
	}
	.selectWrap.cp_sl05::before {
		position: absolute;
	  top: 0;
	  bottom:0;
	  right: 5px;
	  width: 18px;
	  height: 18px;
	  margin: auto;
	  padding: 0;
	  content: '';
	  background: url(../../assets/img/icon_calendar.svg) 50% no-repeat;
	  background-size: 100%;
	}
	.selectWrap.cp_sl04 select,
	.selectWrap.cp_sl05 select {
	  padding: 8px 38px 8px 8px;
	
	}
	
	/* Unit
	---------------------------------------*/ 
	
	.existence-unit{
		width: calc(100% - 2.5em);
	  max-width: calc(330px - 2.5em);
	}
	.unit{
		display: inline-block;
		vertical-align: middle;
	}
	
	
	/* TextArea
	---------------------------------------*/ 
	
	.textarea{
		border: 2px solid #B3B3B3;
		border-radius: 5px;
		background: #ffffff;
		padding: 10px 8px 10px 8px;
		box-sizing: border-box;
		width: 100% !important;
		box-sizing: border-box;
	}
	
	
	/* PrivacyCheck
	---------------------------------------*/ 
	
	.privacy-check{
		margin: 0 0 40px;
	}
	
	.privacy-check p{
		text-align: center;
		margin: 35px 0 -10px;
		font-size: 1.3rem;
	}
	.privacy-check p a{
		text-decoration: underline;
	}
	.privacy-check p.check-btn{
		font-size: 1.6rem;
		margin-bottom:0;
	}
	.privacy-check .mfp_err{
		text-align: center;
	}
	
	
	/* Confirm
	---------------------------------------*/ 
	
	.confirm{
		max-width: 300px;
		margin: 0 auto;
	}
	
	
	/*---------------------------------------
	 * ThanksMessage
	---------------------------------------*/ 
	
	.thankshead{
		padding-bottom: 40px;
	}
	
	.thanks-message{
		margin: 0 0 200px;
	}
	
	.thanks-message{
		width: 100%;
		margin: 0 auto;
	}
	.thanks-message .read{
		line-height: 2;
		text-align: center;
	}
	#mfp_thanks{
		display: none;
	}
    .year_info{
        padding-top: 30px;
    line-height: 23px;
    font-size: 14px;
    }
	
}

@media screen and (min-width: 769px) and (max-width: 1100px){}
	
@media screen and (max-width: 768px) {
	
	/*---------------------------------------
	 * PagaHead
	---------------------------------------*/ 
	
	.pagehead{
		width: 100%;
		padding: 16vw 0;
	}
	.pagehead .inner{
		width: calc(100% - 40px);
		margin: 0 auto;
	}
	.pagehead .inner .title-box{
		margin: 0 0 8vw;
	}
	.pagehead .inner .title-box .en{
		font-size: 8.533vw;
		text-align: center;
		color: #1C9888;
		letter-spacing: 0.267vw;
		margin: 0 0 4vw;
	}
	.pagehead .inner .title-box .ja{
		text-align: center;
		font-size: 3.467vw;
		
	}
	.pagehead .inner .read{
		text-align: center;
		font-size: 3.467vw;
		line-height: 1.6;
	}
	
	
	/*---------------------------------------
	 * FormSection
	---------------------------------------*/ 	
	
	.form-section{
		width: 100%;
		background: #F2F4F4;
		padding: 10.667vw 0;
		color: #808080;
	}
	.form-section .wrap{
		width: 100%;
		margin: 0 auto;
		padding: 10.667vw 5.333vw;
		background: #FFFFFF;
		box-sizing: border-box;
	}
	
	
	/* Schedule
	---------------------------------------*/ 
	
	.schedule{
		text-align: center;
		line-height: 1.6;
		margin: 0 0 10.667vw;
		border: 1px solid #CCCCCC;
		box-sizing: border-box;
		padding: 2.4vw;
	}
	.schedule .midashi,
	.schedule .read{
		margin: 0 0 1em;
	}
	.schedule .notice{
		font-size: 2.2vw;
		text-align: left;
	}
	
	
	/* Flow
	---------------------------------------*/ 
	
	.form-section .flow{
		margin: 0 0 9.333vw;
	}
	
	.form-section .flow ul{
		display: flex;
		justify-content: space-between;
	}
	.form-section .flow ul li{
		width: 28%;
		height: 17.6vw;
		text-align: center;
		font-size: 1.2rem;
		font-weight: 700;
		position: relative;
		display: table;
	}
	.form-section .flow ul li span{
		display: table-cell;
		width: 100%;
		height: 100%;
		vertical-align: middle;
		line-height: 1.6;
		background: #F2F4F4;
		
		box-sizing: border-box;
	}
	.form-section .flow ul li.current span{
		background: #1C9888;
		color: #FFFFFF; 
	}
	.form-section .flow ul li:nth-child(1)::after,
	.form-section .flow ul li:nth-child(2)::after{
		content:"→";
		display: block;
		width: 6.133vw;
		height: 6.133vw;
		line-height: 6.133vw;
		border-radius: 50%;
		background: #F2F4F4;
		position: absolute;
		top:0;
		bottom:0;
		right: -26%;
		margin: auto;
	}
	
	
	/* Attention
	---------------------------------------*/ 	
	
	.form-section .attention{
		margin: 0 0 8vw;
	}
	
	
	/* FormStyle
	---------------------------------------*/ 		
	
	.form-section dl{
		width: 100%;
		line-height: 1.6;
		margin: 0 0 4vw;
	}
	.form-section dl dt{
		width: 100%;
		margin: 0 0 1.333vw;
		font-size: 3.2vw;
	}
	.form-section dl dd{
		width: 100%;	
	}
	.form-section dl dd .notice{
		font-size:2.667vw;
	}
	
	/* InputStyle
	---------------------------------------*/ 
	
	input[type="text"]{
		-webkit-appearance: none; 
		font-size: 3.2vw;
	}
	.input{
		border: 2px solid #B3B3B3;
		border-radius: 1.333vw;
		background: #ffffff;
		padding: 2.667vw 2.133vw 2.667vw 2.133vw;
		box-sizing: border-box;
	}
	
	.input.icon{
		padding: 2.667vw 10.133vw 2.667vw 2.133vw;
		background: url(../../assets/img/icon_calendar.svg) right 5px center no-repeat;
		background-size: 4.8vw;
		height:10.133vw;
	}
	.ie11 .input.icon{
		background: url(../../assets/img/icon_calendar.svg) right -35px center no-repeat;
		background-size: 100px;
	}
	.long{
		width: 100%;
		min-height: 11.2vw;
		height: auto;
	}
	.medium{
		width: calc(51% - 19.2vw);
		
	}
	.mfp_rows{
		display: flex;
		justify-content: space-between;
		width: 100%;
		
	}
	.mfp_col{
		width: 48%;
	}
	
	
	/* RadioButton
	---------------------------------------*/
	
	.radio{
		display: inline-block;
		margin-right: 2.667vw;
	}
	.radio input{
		position: relative;
		top:-0.533vw;
	}
	
	
	
	/* SelectBox
	---------------------------------------*/ 
	
	.selectWrap {
	  overflow: hidden;
	  width: 100%;
	  
	  box-sizing: border-box;
	  display: inline-block;
	  vertical-align: middle;
	}
	.selectWrap select {
	  width: 100%;
	  padding-right: 4.2vw;
	  cursor: pointer;
	  text-indent: 0.003vw;
	  text-overflow: ellipsis;
	  border: none;
	  outline: none;
	  background: transparent;
	  background-image: none;
	  box-shadow: none;
	  -webkit-appearance: none;
	  appearance: none;
	}
	.selectWrap select{
		font-size: 3.2vw;
	}
	.selectWrap select::-ms-expand {
	  display: none;
	}
	.selectWrap.cp_sl04,
	.selectWrap.cp_sl05 {
	  position: relative;
	  border: 2px solid #B3B3B3;
	  border-radius: 1.333vw;
	  background: #ffffff;
	}
	.selectWrap.cp_sl04::before {
	  position: absolute;
	  top: 4.5vw;
	  right: 3.2vw;
	  width: 0;
	  height: 0;
	  padding: 0;
	  content: '';
	  border-left: 6px solid transparent;
	  border-right: 6px solid transparent;
	  border-top: 6px solid #808080;
	  pointer-events: none;
	}
	.selectWrap.cp_sl05::before {
		position: absolute;
	  top: 0;
	  bottom:0;
	  right: 1.333vw;
	  width: 4.8vw;
	  height: 4.8vw;
	  margin: auto;
	  padding: 0;
	  content: '';
	  background: url(../../assets/img/icon_calendar.svg) 50% no-repeat;
	  background-size: 100%;
	}
	.selectWrap.cp_sl04 select,
	.selectWrap.cp_sl05 select {
	  padding: 2.133vw 10.133vw 2.133vw 2.133vw;
	
	}
	
	/* Unit
	---------------------------------------*/ 
	
	.existence-unit{
		width: calc(100% - 10.667vw);
	}
	.unit{
		display: inline-block;
		vertical-align: middle;
	}
	
	
	/* TextArea
	---------------------------------------*/ 
	
	.textarea{
		border: 2px solid #B3B3B3;
		border-radius: 1.333vw;
		background: #ffffff;
		padding: 2.667vw 2.133vw 2.667vw 2.133vw;
		box-sizing: border-box;
		width: 100% !important;
		box-sizing: border-box;
		font-size: 3.2vw;
	}
	
	
	/* PrivacyCheck
	---------------------------------------*/ 
	
	.privacy-check{
		margin: 0 0 10.667vw;
	}
	
	.privacy-check p{
		text-align: center;
		margin: 9.333vw 0 -2.667vw;
		font-size: 3.476vw;
		line-height: 1.8;
	}
	.privacy-check p a{
		text-decoration: underline;
	}
	.privacy-check p.check-btn{
		font-size: 4.267vw;;
		margin-bottom:0;
	}
	.privacy-check .mfp_err{
		text-align: center;
	}
	
	
	/* Confirm
	---------------------------------------*/ 
	
	.confirm{
		max-width: 80vw;
		margin: 0 auto;
	}
	
	
	/*---------------------------------------
	 * ThanksMessage
	---------------------------------------*/ 
	
	.thankshead{
		padding-bottom: 10.667vw;
	}
	
	.thanks-message{
		margin: 0 0 26.667vw;
	}
	
	.thanks-message {
		width: 100%;
		margin: 0 auto;
	}
	.thanks-message .read{
		font-size: 3.467vw;
		line-height: 2;
		text-align: center;
	}
	#mfp_thanks{
		display: none;
	}	
    .year_info{
        text-align: center;
        padding-top: 20px;
        line-height: 19px;
    }
	
}