@charset "UTF-8";
/* CSS Document */


/*--------------------------------------------------------
　PC
--------------------------------------------------------*/
@media print, screen and (min-width: 769px){
	
	div#mv {
		background: #fafafa;
		position: relative;
		padding: 118px 0 200px;
		text-align: center;
	}
	
	div#mv h1{
		font-family: "Zen Old Mincho","Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 32px;
		font-size: 3.2rem;
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.1em;
		color: #333333;
		margin-bottom: 88px;
	}
	
	div#mv figure{
		width: 276px;
		line-height: 0;
		margin: 0 auto;
	}
	
	section div.section_inner {
		width: 1085px;
		margin: 0 auto;
	}
	
	section h2 {
		font-size: 36px!important;
		font-size: 3.6rem!important;;
		font-weight: 300!important;
		line-height: 1.4;
		letter-spacing: 0.14em!important;;
		color: #333!important;
		margin-bottom: 1.25em!important;;
		background: none!important;
		padding: 0!important;
	}
	
	section p {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 400;
		line-height: 1.4;
		text-align: left;
	}
	
	section.info {
		padding: 90px 0 80px;
	}
	
	section.info p{
		line-height: 2.25;
	}
	
	div.bg_gray {
		padding: 75px 0 110px;
		background: #fafafa;
	}
	
	section.guideline dl {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.guideline dl dt{
		width: 150px;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		background: #009fe8;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		padding: 12px 0;
	}
	
	section.guideline dl dd{
		width: 918px;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.7;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		
	}
	
	section.guideline dl dd + dt,
	section.guideline dl dd:nth-child(n + 3){
		margin-top: 30px;
	}
	
	section.guideline dl dd ul li{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section.guideline dl dd ul li + li{
		margin-top: 9px;
	}
	
	section.guideline dl dd ul li h6{
		display: inline-block;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		text-align: center;
		background: #000;
		padding: 0.5em 1.5em;
		margin-right: 0.5em;
	}
	
	section.guideline dl dd ul li p{
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
	}
	
	div.bg_white {
		width: 1100px;
		margin: 120px auto 0;
		background: #FFF;
		border-radius: 35px;
		overflow: hidden;
		padding: 75px 0 80px;
	}
	
	div.bg_white h2{
		font-weight: 400!important;
	}
	
	div.bg_white h3{
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		background: #009fe8;
		padding: 0.75em 1.25em;
		margin-bottom: 25px;
		margin-top: 95px;
	}
	
	div.bg_white h3:first-of-type{
		margin-top: 0;
	}
	
	div.bg_white h4{
		display: inline-block;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		background: #000;
		padding: 0.75em 1.25em;
		margin-top: 50px;
		margin-bottom: 15px;
	}
	
	div.bg_white a + h4{
		margin-top: 75px;
	}
	
	div.bg_white p {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
		overflow-wrap: anywhere;
	}
	
	div.bg_white ul li{
		margin: 5px 0;
	}
	
	div.bg_white ul li{
		line-height: 1.6;
	}
	
	div.bg_white a {
		width: 430px;
		height: 62px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.08em;
		color: #333;
		border-radius: 32px;
		overflow: hidden;
		margin-top: 35px;
		position: relative;
		transition-duration: 0.5s;
		transition-property: color;
	}
	
	div.bg_white a.orenge {
		color: #FFF;
	}
	
	div.bg_white a:hover {
		color: #FFF;
		opacity: 1!important;
	}
	
	div.bg_white a::before {
		content: "";
		width: 100%;
		height: 100%;
		display: block;
		background: #efefef;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -3;
	}
	
	div.bg_white a.orenge::before {
		content: "";
		background: #e9572b;
	}
	
	div.bg_white a::after {
		content: "";
		width: 0;
		height: 100%;
		display: block;
		background: #009fe8;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transition-duration: 0.5s;
		transition-property: width;
	}
	
	div.bg_white a:hover::after {
		content: "";
		width: 100%;
	}
	
	div.bg_white section {
		width: 100%;
		margin: 0;
	}
	
	div.bg_white section div.section_inner {
		width: 100%;
		padding: 0 65px;
	}
	
	div.bg_white section div.section_inner div.mark{
		display: inline-block;
		border: 1px solid #999;
		padding: 30px 50px;
		margin: 10px 0;
		border-radius: 10px;
	}
	
	div.bg_white section div.section_inner div.mark figure {
		width: 380px;
		line-height: 0;
	}
	
	section.apply {
		padding-bottom: 80px;
	}
	
	section.tax,
	section.receipt{
		padding: 80px 0;
		border-top: 1px solid #cccccc;
	}
	
	section.tax h2 + p,
	section.receipt h2 + p{
		margin-bottom: 40px;
	}
	
	section.tax p.cap,
	section.receipt p.cap{
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 2.4;
	}
	
	section.receipt ul + p {
		margin-top: 15px;
	}
	
	section.privacy {
		padding: 80px 0;
	}
	
	section.privacy p{
		text-align: center;
	}
	
	section.contact{
		margin-bottom: 0;
	}
	
	section.contact h3{
		font-size: 22px;
		font-size: 2.2rem;
		line-height: 1;
		text-align: center;
		margin-bottom: 50px;
	}
	
	section.contact div.block {
		width: 974px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 46px;
		margin-bottom: 45px;
	}
	
	section.contact div.block dl{
		width: 44.1%;
	}
	
	section.contact div.block dl dt{
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.08em;
		text-align: center;
	}
	
	section.contact div.block dl dd{
		width: 100%;
		height: 60px;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: 0.08em;
		line-height: 1;
		color: #FFF;
		border-radius: 32px;
		background: #000;
		overflow: hidden;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-top: 15px;
	}
	
	section.contact div.block dl dd a{
		color: #FFF;
	}
	
	section.contact div.block + p{
		font-size: 20px;
		font-size: 2.0rem;
		letter-spacing: 0.08em;
		line-height: 1;
		text-align: center;
	}
}

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 768px){
	
	div#mv {
		background: #fafafa;
		position: relative;
		padding: 15vw 0 18vw;
		text-align: center;
	}
	
	div#mv h1{
		font-family: "Zen Old Mincho","Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 28px;
		font-size: 2.8rem;
		font-weight: 400;
		line-height: 1.4;
		letter-spacing: 0.1em;
		color: #333333;
		margin-bottom: 88px;
	}
	
	div#mv figure{
		width: 80%;
		max-width: 276px;
		line-height: 0;
		margin: 0 auto;
	}
	
	section div.section_inner {
		width: 90%;
		margin: 0 auto;
	}
	
	section h2 {
		width: 100%!important;
		font-size: 30px!important;
		font-size: 3.0rem!important;
		font-weight: 300!important;
		line-height: 1.4!important;
		letter-spacing: 0.04em!important;
		color: #333!important;
		margin: 0 0 1.25em 0!important;
		background: none!important;
		padding: 0!important;
	}
	
	section p {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 400;
		line-height: 1.8;
		text-align: left;
	}
	
	section.info {
		padding: 15vw 0 18vw;
	}
	
	section.info p{
		line-height: 2.25;
	}
	
	div.bg_gray {
		padding: 15vw 0 18vw;
		background: #fafafa;
	}
	
	section.guideline dl {
		display: block;
	}
	
	section.guideline dl dt{
		width: 100%;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		background: #009fe8;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		padding: 12px 0;
	}
	
	section.guideline dl dd{
		width: 100%;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.7;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		margin-top: 4vw;
		
	}
	
	section.guideline dl dd + dt,
	section.guideline dl dd:nth-child(n + 3){
		margin-top: 30px;
	}
	
	section.guideline dl dd ul li{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section.guideline dl dd ul li + li{
		margin-top: 15px;
	}
	
	section.guideline dl dd ul li h6{
		display: inline-block;
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		text-align: center;
		background: #000;
		padding: 0.5em 1.5em;
		margin-right: 0.5em;
	}
	
	section.guideline dl dd ul li p{
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
	}
	
	div.bg_white {
		width: 90%;
		margin: 15vw auto 0;
		background: #FFF;
		border-radius: 7vw;
		overflow: hidden;
		padding: 10vw 0 0;
	}
	
	div.bg_white h2{
		font-weight: 400!important;
	}
	
	div.bg_white h3{
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		background: #009fe8;
		padding: 0.75em 1.25em;
		margin-bottom: 25px;
		margin-top: 95px;
	}
	
	div.bg_white h3:first-of-type{
		margin-top: 0;
	}
	
	div.bg_white h4{
		display: inline-block;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1.4;
		color: #FFF;
		background: #000;
		padding: 0.75em 1.25em;
		margin-top: 50px;
		margin-bottom: 15px;
	}
	
	div.bg_white a + h4{
		margin-top: 75px;
	}
	
	div.bg_white p {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
	}
	
	div.bg_white ul li{
		margin: 5px 0;
	}
	
	div.bg_white ul li{
		line-height: 1.6;
	}
	
	div.bg_white a {
		width: 100%;
		height: 68px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		letter-spacing: 0.08em;
		color: #333;
		border-radius: 10vw;
		overflow: hidden;
		background: #efefef;
		margin-top: 35px;
	}
	
	div.bg_white a.orenge {
		color: #FFF;
		background: #e9572b;
	}
	
	div.bg_white section {
		width: 100%;
		margin: 0;
	}
	
	div.bg_white section div.section_inner {
		width: 90%;
		margin: 0 auto;
	}
	
	div.bg_white section div.section_inner div.mark{
		display: block;
		border: 1px solid #999;
		padding: 6vw 8vw;
		margin: 4vw 0;
		border-radius: 2vw
	}
	
	div.bg_white section div.section_inner div.mark figure {
		width: 100%;
		line-height: 0;
	}
	
	section.apply {
		padding-bottom: 80px;
	}
	
	section.tax,
	section.receipt{
		padding: 80px 0;
		border-top: 1px solid #cccccc;
	}
	
	section.tax h2 + p,
	section.receipt h2 + p{
		margin-bottom: 40px;
	}
	
	section.tax p.cap,
	section.receipt p.cap{
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 2.4;
	}
	
	section.receipt ul li {
		text-indent: -1em;
		padding-left: 1em;
	}
	
	section.receipt ul + p {
		margin-top: 15px;
	}
	
	section.privacy {
		padding: 15vw 0;
	}
	
	section.contact{
		margin-bottom: 0;
	}
	
	section.contact h3{
		font-size: 20px;
		font-size: 2.0rem;
		line-height: 1.6;
		text-align: center;
		margin-bottom: 8vw;
	}
	
	section.contact div.block {
		width: 100%;
		margin: 0 auto;
		margin-bottom: 10vw;
	}
	
	section.contact div.block dl{
		width: 100%;
	}
	
	section.contact div.block dl + dl{
		margin-top: 8vw;
	}
	
	section.contact div.block dl dt{
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.08em;
		text-align: center;
	}
	
	section.contact div.block dl dd{
		width: 100%;
		height: 60px;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
		letter-spacing: 0.08em;
		line-height: 1;
		color: #FFF;
		border-radius: 32px;
		background: #000;
		overflow: hidden;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-top: 15px;
	}
	
	section.contact div.block dl dd a{
		color: #FFF;
	}
	
	section.contact div.block + p{
		font-size: 18px;
		font-size: 1.8rem;
		letter-spacing: 0.08em;
		line-height: 1.6;
		text-align: center;
	}
}