@charset "UTF-8";

/*
 * 横幅1024px
 */
body {
	margin: 0;
	padding: 0;
	background-color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: #000000;
}
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;
}
li { list-style:none; } caption,th{ text-align:left; }
input,textarea,select{ font-family:inherit;font-size:inherit;font-weight:inherit; }

img {
	vertical-align: bottom;
}
a img:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=50)";  /* ie 8 */
	-moz-opacity: 0.5;                /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.5;              /* Safari 1.x */
}

.wrapper {
	margin: 0 auto;
	padding: 0 10px;
	max-width: 1024px;
}

/* ヘッダー */
header {
	width: 100%;
	background: #FFFFFF;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 200;
	font-family: 'Gothic A1', sans-serif;
	font-weight: 400;
}
	header #inner_header {
		overflow: hidden;
		padding: 0 10px;
		width: 100%;
		height: 65px;
		line-height: 65px;
		table-layout: fixed;
		box-sizing: border-box;
	}
		header #inner_header .h_logo {
			float: left;
			overflow: hidden;
		}
			header #inner_header .h_logo img {
				width: 224px;
				vertical-align: middle;
			}
		header #inner_header .h_menu {
			float: right;
			width: calc(100% - 244px);
			text-align: right;
			font-size: 0;
		}
			header #inner_header .h_menu p {
				display: inline-block;
				padding-left: 4%;
				font-size: 16px;
			}
				header #inner_header .h_menu p a {
					text-decoration: none;
					color: #666666;
				}

	#dr-btn {
		display: none;
	}
	#dr-menu {
		display: none;
	}

/* メイン */
#main {
	margin-top: 65px;
	z-index: 200;
}
	#main img {
		width: 100%;
		height: auto;
	}
	#main a {
		text-decoration: underline;
		color: #000000;
	}
		#main a:hover {
			color: #666666;
		}

	/* slide */
	#main .top_visual {
		position: relative;
	}
		#main .top_visual .bxslider li a {
			display: block;
		}
			#main .top_visual img {
				max-height: 500px;
				object-fit: cover;
			}
		#main .top_text {
			position: absolute;
			width: 100%;
			text-align: center;
			top: 0;
			left: 0;
			z-index: 10;
		}
		@media screen and (min-width:1025px) {
			#main .top_text {
				top: calc((100% - 476px)/2);
			}
		}
		#main .top_text img {
			max-width: 1024px;
		}

	#main .grayarea {
		padding: 200px 0 200px;
		background-color: #f2f2f2;
	}
	#main .grayarea.link {
		padding: 100px 0 80px;
	}

	#main #newslist.inner_main {
		padding-bottom: 400px;
	}
	#main #newscontents.inner_main {
		padding-bottom: 400px;
	}
	#main #bloglist.inner_main {
		padding-bottom: 400px;
	}
	#main #blogcontents.inner_main {
		padding-bottom: 400px;
	}
	#main #finish.inner_main {
		padding-bottom: 200px;
	}
		#main .ttl_area {
			padding: 200px 0 80px;
			text-align: center;
		}
		#main .grayarea .ttl_area {
			padding: 0 0 60px;
		}
		#main #check.ttl_area {
			padding: 40px 0 40px;
		}
		#main #finish .ttl_area {
			padding: 80px 0 80px;
		}
		#main #news .ttl_area {
			padding: 80px 0 80px;
		}
		#main #blog .ttl_area {
			padding: 80px 0 80px;
		}
			#main h2.ttl_main {
				margin-top: -70px;
				padding-top: 70px;
				font-size: 42px;
				font-family: 'Gothic A1', sans-serif;
				font-weight: 800;
			}
			#main #finish h2.ttl_main {
				font-family: 'Gothic A1', sans-serif;
				font-weight: 500;
			}
			#main #bloglist h2.ttl_main,
			#main #blogcontents h2.ttl_main {
				color: #599a92;
			}
			#main h3.ttl_sub {
				margin-top: -70px;
				padding-top: 70px;
				font-size: 28px;
				font-family: 'Noto Sans', sans-serif;
				font-weight: 700;
			}
			#main .ttl_area p {
				margin-top: 40px;
				font-size: 28px;
				font-family: 'Noto Sans', sans-serif;
				font-weight: 700;
			}
			#main .ttl_area p.caption {
				font-size: 16px;
				line-height: 2.0em;
				font-family: 'Noto Sans', sans-serif;
				font-weight: 400;
			}
			#main .ttl_area p.nar {
				margin-top: 20px;
			}

		#main .imagebox {
			margin: 0 auto;
			text-align: center;
		}

		/* News */
		#main .news01 {
			margin: 0 auto;
			max-width: 800px;
		}
			#main .news01 dl {
				width: 100%;
				border-top: 2px solid #999999;
			}
				#main .news01 dt {
					float: left;
					clear: left;
					padding: 20px 0;
					width: 6em;
				}
				#main .news01 dd {
					padding: 20px 0 20px 6em;
					border-bottom: 2px solid #999999;
				}
					#main .news01 dd h3 {
						display: inline;
						margin: 0;
						padding: 0;
						font-family: 'Noto Sans JP', sans-serif;
						font-weight: 400;
						font-size: 16px;
						color: #000000;
					}
					#main .news01 dd p {
						display: inline !important;
					}
			/* NewsList */
			#main .news01 .news_year {
				margin-bottom: 40px;
				width: 100%;
				font-size: 0;
			}
				#main .news_year p {
					display: inline-block;
					min-width: 80px;
					font-size: 16px;
				}
					#main .news_year a {
						text-decoration: none;
						color: #666666;
					}
			/* NewsContents */
			#main .newsarea {
				margin: 0 auto;
				max-width: 750px;
			}
				#main .newsarea .news_ttl {
					margin-bottom: 40px;
					padding: 10px 20px;
					border-top: 2px solid #999999;
					border-bottom: 2px solid #999999;
				}
					#main .newsarea .news_ttl h3 {
						font-family: 'Noto Sans JP', sans-serif;
						font-weight: 700;
						font-size: 16px;
					}
				#main .newsarea h3.news_ttl {
					margin-bottom: 40px;
					padding: 10px 20px;
					border-top: 2px solid #999999;
					border-bottom: 2px solid #999999;
					font-family: 'Noto Sans JP', sans-serif;
					font-weight: 700;
					font-size: 16px;
				}
					#main .newsarea h3.news_ttl span {
						font-family: 'Noto Sans JP', sans-serif;
						font-weight: 400;
					}
				#main .newsarea .news_cont {
					padding: 0 20px;
				}
					#main .newsarea .news_cont h4 {
						padding: 20px 0;
						font-family: 'Noto Sans JP', sans-serif;
						font-weight: 700;
					}
					#main .newsarea .news_cont p {
						padding-bottom: 24px;
					}
					#main .newsarea .news_cont .img {
						font-size: 12px;
					}
					#main .newsarea .news_cont .link {
						margin-top: 4em;
					}
					#main .newsarea .news_cont a {
						color: #000000;
					}
					#main .newsarea .news_cont img {
						margin-bottom: 5px;
					}
					#main .newsarea .news_cont a:hover {
						color: #666666;
					}

		#main .btn_link {
			margin: 80px auto 0;
			max-width: 200px;
		}
			#main .btn_link::before {
				transition: all .3s linear;
			}
			#main .btn_link a {
				display: block;
				padding: 15px 0;
				width: 100%;
				background-color: #fff;
				border: 1px solid #000;
				border-radius: 5px;
				text-align: center;
				font-family: 'Noto Sans', sans-serif;
				font-weight: 500;
				text-decoration: none;
				color: #000000;
			}
			#main .btn_link a:hover {
				background-color: #666666;
				color: #FFFFFF;
			}

		#main .ttl_gray {
			margin-top: 60px;
			padding: 12px 0;
			background-color: #dbdbdb;
			border-radius: 20px;
			text-align: center;
			font-size: 26px;
				font-family: 'Noto Sans', sans-serif;
				font-weight: 700;
		}
			#main .ttl_gray a {
				display: block;
				color: #1877f2;
				text-decoration: none;
			}

		/* bnner */
		#main .bnn01_01 {
			display: table;
			margin: 60px auto -40px;
			width: 100%;
		}
			#main .bnn01_01 p {
				display: table-cell;
				width: 50%;
				box-sizing: border-box;
			}
			#main .bnn01_01 p:nth-child(1) {
				padding-right: 10px;
			}
			#main .bnn01_01 p:nth-child(2) {
				padding-left: 10px;
			}
				#main .bnn01_01 p img {
					width: 100%;
				}

		/* About */
		#main .about02_01 {
			margin-bottom: 80px;
		}
			#main .about02_01 p {
				margin-bottom: 60px;
			}

		/* Jirei */
		#main .jirei01_01 {
			margin-bottom: 160px;
			padding: 0 40px;
		}
		#main .jirei01_02 {
			margin-bottom: 160px;
		}
		#main .jirei01_03 {
			position: relative;
			margin: 0 40px 160px;
			padding-bottom: 56.25%;
			height: 0;
			overflow: hidden;
		}
			#main .jirei01_03 iframe {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}
		#main .jirei01_04 {
			margin-bottom: 160px;
			padding: 0 80px;
			font-size: 14px;
		}
			#main .jirei01_04 ul.movielist {
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
				width: 100%;
			}
				#main .jirei01_04 ul.movielist > li {
					margin-bottom: 40px;
					width: calc((100% - 30px)/3);
				}
					#main .jirei01_04 ul.movielist > li p:nth-child(1) {
						height: 48px;
						line-height: 48px;
						text-align: center;
					}
					#main .jirei01_04 ul.movielist > li p:nth-child(1).twoline {
						padding-top: 4px;
						height: 44px;
						line-height: 20px;
					}
					#main .jirei01_04 ul.movielist > li p:nth-child(2) {
						margin-bottom: 10px;
					}
						#main .jirei01_04 ul.movielist > li img {
							width: 100%;
						}
							#main .jirei01_04 ul.movielist ul.moviecate li {
								display: inline-block;
								margin-bottom: 8px;
								padding: 3px 5px;
								background-color: #FFE67A;
							}
		#main .jirei01_05 {
			margin: 0 auto 160px;
			max-width: 901px;
			text-align: center;
		}
			#main .jirei01_05 .case {
				display: table;
				width: 100%;
			}
				#main .jirei01_05 .case p {
					display: table-cell;
				}
				#main .jirei01_05 .case p:nth-child(2),
				#main .jirei01_05 .case p:nth-child(4) {
					width: 2%;
				}
				#main .jirei01_05 .case p:nth-child(1),
				#main .jirei01_05 .case p:nth-child(3),
				#main .jirei01_05 .case p:nth-child(5) {
					width: 32%;
				}
				#main .jirei01_05 .case img {
					margin-bottom: 10px;
				}

/* remodal */
.remodal {
	z-index: 100;
	max-width: 760px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	height: calc(100vh - 100px);
	overflow-y: scroll;
}
	.remodal section {
		padding: 50px;
		text-align: left;
	}
		.remodal section .close_btn {
			width: 50px;
			height: 50px;
			background-image: url(../images/close.png);
			background-repeat: no-repeat;
			background-size: contain;
			background-position: center;
			position: absolute;
			right: 0;
			top: 0;
			cursor: pointer;
		}
		.remodal section h4 {
			margin-bottom: 10px;
			font-size: 20px;
		}
		.remodal section h5 {
			padding-bottom: 10px;
			font-size: 20px;
		}
		.remodal section p {
			margin-top: 1.0em;
		}
		.remodal section .modal_movie {
			position: relative;
			margin-bottom: 10px;
			padding-bottom: 56.25%;
			height: 0;
			overflow: hidden;
		}
			.remodal section .modal_movie iframe {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}
		.remodal section .modal_theme {
		}
			.remodal section .modal_theme li {
				display: inline-block;
				margin-bottom: 8px;
				padding: 3px 5px;
				background-color: #FFE67A;
			}
		.remodal section .modal_voice {
			margin-top: 50px;
			border-top: solid 1px #000000;
		}
			.remodal section .modal_voice li {
				margin-top: 1.0em;
				padding-left: 1em;
				text-indent: -1em;
			}

		/* merit */

		#main .merit01_01 {
			margin: 0 auto 80px;
			max-width: 824px;
			font-family: 'Noto Sans', sans-serif;
			font-weight: 500;
		}
			#main .merit01_01 .merit01_01_table {
				display: table;
				margin-bottom: 20px;
				width: 100%;
			}
				#main .merit01_01 .merit01_01_td {
					display: table-cell;
					padding: 0 20px;
					height: 60px;
					vertical-align: middle;
					font-size: 20px;
					line-height: 1.2em;
				}
				#main .merit01_01 .merit01_01_td:nth-child(1) {
					width: 34%;
					border-top-left-radius: 10px;
					border-bottom-left-radius: 10px;
					color: #FFFFFF;
				}
				#main .merit01_01 .merit01_01_td:nth-child(2) {
					width: 66%;
					border-top-right-radius: 10px;
					border-bottom-right-radius: 10px;
				}
				#main .merit01_01 .merit01_01_table.green .merit01_01_td:nth-child(1) {
					background-color: #00A95F;
				}
				#main .merit01_01 .merit01_01_table.green .merit01_01_td:nth-child(2) {
					background-color: #00A95F80;
				}
				#main .merit01_01 .merit01_01_table.red .merit01_01_td:nth-child(1) {
					background-color: #EA5504;
				}
				#main .merit01_01 .merit01_01_table.red .merit01_01_td:nth-child(2) {
					background-color: #EA550480;
				}
			#main .merit01_01 .merit01_01_sarani {
				margin: -10px 0 10px 10%;
				width: 58px;
			}

		#main .merit01_02 {
			margin-bottom: 80px;
		}
			#main .merit01_02 p {
				margin-bottom: 60px;
			}

		/* Service */
		#main .service00 {
			margin-bottom: 200px;
			max-width: 780px;
			text-align: center;
		}
			#main .service00 p {
				display: inline-block;
				font-size: 0;
					width: 29%;
			}
			#main .service00 p:nth-child(2) {
				margin: 0 6.5%;
			}
				#main .service00 p img {
					max-width: 226px;
				}
				#main .service00 p a:hover {
					opacity: 0.8;
				}
		#main .service01_table {
			display: table;
			margin: 0 auto;
			max-width: 970px;
		}
			#main .service01_table_l {
				display: table-cell;
				max-width: 614px;
				vertical-align: top;
			}
			#main .service01_table_r {
				display: table-cell;
				vertical-align: bottom;
				padding-left: 40px;
				min-width: 356px;
				box-sizing: border-box;
			}
				#main .service01_table_r h4 {
					color: #2e318a;
					font-family: 'Noto Sans', sans-serif;
					font-weight: 700;
					font-size: 20px;
				}
				#main .service01_table_r p {
					margin-bottom: 1em;
				}
		#main .service02 {
			margin-bottom: 180px;
			max-width: 851px;
		}
			#main .service02_3 {
				position: relative;
				margin-bottom: 160px;
				padding-bottom: 56.25%;
				height: 0;
				overflow: hidden;
			}
			#main .service02_3.nomb {
				margin-bottom: 0;
			}
				#main .service02_3 iframe {
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
				}
		#main .service03 {
			margin-bottom: 200px;
			max-width: 841px;
		}
		#main .service03_link p {
			margin-bottom: 20px;
			text-align: center;
			font-size: 20px;
		}
		#main .service03_link p:nth-child(4) {
			margin-bottom: 0;
		}
			#main .service03_link p a:after {
				content: "";
				display: inline-block;
				margin-left: 10px;
				width: 16px;
				height: 16px;
				background-image: url("../images/openwindow.png");
				background-size: contain;
			}
		#main .service03_menu {
			margin: 0 auto 200px;
			max-width: 824px;
			font-family: 'Noto Sans', sans-serif;
			font-weight: 500;
		}
			#main .service03_menu dl {
				margin-bottom: 50px;
				padding: 20px 30px;
				background: #ed7d31;
				border-radius: 40px;
				color: #FFFFFF;
				font-size: 22px;
			}
			#main .service03_menu dt {
				float: left;
				width: 1.0em;
			}
			#main .service03_menu dd {
				margin-left: 1.0em;
			}

			/* Link */
			#main .link01 {
				margin: 0 auto 0;
				max-width: 900px;
			}
				#main .link01 ul {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;
					width: 100%;
				}
					#main .link01 ul li {
						margin-bottom: 40px;
						width: calc((100% - 30px)/3);
					}
						#main .link01 ul li img {
							width: 100%;
						}

		/* Download */
		#main .download01 {
			margin: 0 auto;
			max-width: 850px;
		}
			#main .download01_table {
				display: table;
				width: 100%;
				table-layout: fixed;
			}
				#main .download01_table_l {
					display: table-cell;
					vertical-align: top;
					width: 45%;
					box-sizing: border-box;
				}
					#main .download01_table_l p {
						margin: 0 auto 30px;
						max-width: 298px;
					}
						#main .download01_table_l p .checkbox {
							display: block;
							margin: 0 auto;
							padding: 16px 0 12px 34px;
							font-size: 14px;
						}
				#main .download01_table_r {
					display: table-cell;
					vertical-align: top;
					padding: 20px;
					width: 55%;
					background-color: #FFFFFF;
					box-sizing: border-box;
				}

	/* Contact */
	#main .campane {
		margin: 40px auto 0;
		width: 326px;
		background: url("../images/campane.png") no-repeat;
		font-size: 24px !important;
		font-family: 'Noto Sans', sans-serif;
		font-weight: 700;
	}
	#main .uketsuke {
		margin: 20px auto 30px;
		padding: 10px 0;
		width: 350px;
		background: #599a92;
		color: #FFFFFF;
		font-size: 24px !important;
		font-family: 'Noto Sans', sans-serif;
		font-weight: 700;
	}
	#main .redtxt {
		margin-bottom: 30px;
		text-align: center;
		color: #bb272d;
		font-size: 24px !important;
		font-family: 'Noto Sans', sans-serif;
		font-weight: 700;
	}
	#main .finish .redtxt {
		font-family: 'Noto Sans', sans-serif;
		font-weight: 400;
	}
	#main .normaltxt {
		font-size: 16px !important;
		font-family: 'Noto Sans', sans-serif;
		font-weight: 400 !important;
	}

	#main #form {
		margin: 10px auto 200px;
		max-width: 800px;
	}
		#main .error {
			margin-bottom: 30px;
			color: #c50000;
			font-weight: bold;
			font-size: 24px;
		}
		#main .download01 .error {
			margin-left: 40px;
		}
		#main .form .err {
			color: #c50000;
		}
		#main .form .message {
			margin-bottom: 20px;
			text-align: center;
			color: #FF0000;
			font-size: 24px;
		}
		#main .form .kakunin {
			padding-top: 20px;
			padding-bottom: 20px;
			text-align: center;
			font-weight: bold;
			font-size: 18px;
		}
		#main .form .question {
			margin-bottom: 10px;
		}
		#main .form .required::before {
			display: inline-block;
			margin-right: 10px;
			padding: 2px 10px;
			content: '必須';
			color: #fff;
			background: #599a92;
			font-size: 14px;
		}
		#main .form .input {
			margin-bottom: 50px;
		}
			#main .form .input input[type="text"], #main .form .input textarea {
				padding: 8px;
				width: 100%;
				box-sizing: border-box;
			}
		#main .form .input-t {
			margin-top: 50px;
		}
		#main .form .selectbx {
			margin-bottom: 80px;
		}
		#main .form .radiobx {
			margin-bottom: 80px;
		}
			#main .form .radiobx li {
				margin-top: 20px;
				font-size: 18px;
			}
		#main .form .checkbx {
			margin-bottom: 80px;
		}
			#main .form .checkbx li {
				margin-top: 20px;
				font-size: 18px;
			}
		#main .form h4 {
			margin-bottom: 30px;
			font-weight: normal;
			font-size: 20px;
		}
		#main .form .txtarea {
			margin-bottom: 10px;
		}

		#main .form .confirm {
			margin-bottom: 50px;
			padding: 20px;
			background: #F5F5F5;
			min-height: 24px;
		}
			#main .confirm dt {
				float: left;
				width: 1.0em;
			}
			#main .confirm dd {
				margin-left: 1.0em;
			}

		#main .form .btn_next {
			margin: 80px auto 0;
			max-width: 240px;
		}
		#main .form .btn_next_w {
			margin: 80px auto 0;
			max-width: 480px;
		}
			#main .form .btn_next::before, #main .form .btn_next_w::before {
				transition: all .3s linear;
			}
		#main .form input[type="submit"], #main .form input[type="button"] {
			padding: 15px 0;
			width: 200px;
			background-color: #fff;
			border: 1px solid #000;
			border-radius: 5px;
			text-align: center;
			font-family: 'Noto Sans', sans-serif;
			font-weight: 500;
		}
		#main .form .btn_next input[type="submit"], #main .form .btn_next input[type="button"] {
			margin: 0 calc((100% - 200px)/2);
		}
		#main .form .btn_next_w input[type="submit"], #main .form .btn_next_w input[type="button"] {
			margin: 0 calc((100% - 400px)/4);
		}
			#main .form input[type="submit"]:hover, #main .form input[type="button"]:hover {
				background-color: #666666;
				color: #FFFFFF;
			}
		#main .copy {
			margin-bottom: 60px;
			text-align: center;
			font-size: 80%;
		}


/* form用 */
/* ios safari */
input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}

/* select */
.select01 {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	z-index: 1;
}
	.select01::after {
		content: '';
		display: inline-block;
		width: 8px;
		height: 8px;
		border: 0px;
		border-top-color: currentcolor;
		border-top-style: none;
		border-top-width: 0px;
		border-right-color: currentcolor;
		border-right-style: none;
		border-right-width: 0px;
		border-top: solid 1px #c1272d;
		border-right: solid 1px #c1272d;
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		vertical-align: middle;
		position: absolute;
		top: 50%;
		right: 15px;
		margin-top: -7px;
	}
	.select01 select {
		outline: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		position: relative;
		z-index: 2;
		display: block;
		margin: 0;
		margin-bottom: 0px;
		padding: 10px 35px 10px 15px;
		background: transparent;
		line-height: 1.5;
		box-sizing: border-box;
		border: 1px solid #ccc;
		border-radius: 3px;
		font-size: 1.4rem;
		min-width: 200px;
		width: 100%;
	}
	.select01.nar select {
		padding: 4px 25px 4px 5px;
	}
	.select01 select::-ms-expand {
		display: none;
	}
		.select01 select option {
			margin-bottom: 1px;
		}

/* radio、checkbox */
input[type=radio], input[type=checkbox] {
	display: none;
}
	.radio, .checkbox {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		border-radius: 8px;
		vertical-align: middle;
		cursor: pointer;
	}
	.radio {
		margin: 0 0 8px 0;
		padding: 14px 12px 12px 34px;
	}
	.checkbox {
		margin: 0 0 8px 0;
		padding: 12px 0 12px 34px;
	}
		.radio:after, .checkbox:after {
			-webkit-transition: border-color 0.2s linear;
			transition: border-color 0.2s linear;
			position: absolute;
			top: 0;
			left: 5px;
			display: block;
			margin-top: 17px;
			width: 18px;
			height: 18px;
			border: 1px solid #000;
			border-radius: 3px;
			content: '';
		}
		.radio-dis:after, .checkbox-dis:after {
			background: #c5c5c5;
		}
		.radio:before {
			-webkit-transition: opacity 0.2s linear;
			transition: opacity 0.2s linear;
			position: absolute;
			top: 0;
			left: 10px;
			display: block;
			margin-top: 22px;
			width: 10px;
			height: 10px;
			border-radius: 50%;
			background-color: #53b300;
			content: '';
			opacity: 0;
		}
		input[type=radio]:checked + .radio:before {
			opacity: 1;
		}
		.checkbox:before {
			-webkit-transition: opacity 0.2s linear;
			transition: opacity 0.2s linear;
			position: absolute;
			top: 0;
			left: 11px;
			display: block;
			margin-top: 20px;
			width: 5px;
			height: 9px;
			border-right: 3px solid #53b300;
			border-bottom: 3px solid #53b300;
			content: '';
			opacity: 0;
			-webkit-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			transform: rotate(45deg);
		}
		input[type=checkbox]:checked + .checkbox:before {
			opacity: 1;
		}

	input::placeholder {
		color: rgba(0,0,0,0.5);
	}

textarea {
	property: value;
	border: 1px solid #ccc !important;
	padding: 5px 5px;
	width: 100%;
	display: block;
	-webkit-appearance: textfield;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	resize: vertical;
	border-radius: 3px;
}

/* フッター */
footer {
	padding: 0 10px;
	width: 100%;
	line-height: 80px;
	font-size: 14px;
	table-layout: fixed;
	box-sizing: border-box;
	background-color: #7f7f7f;
}
	footer #inner_footer {
		overflow: hidden;
		padding: 0 60px 0 20px;
		width: 100%;
		height: 80px;
		box-sizing: border-box;
	}
		footer #inner_footer a {
			text-decoration: none;
			color: #FFFFFF;
		}
		footer #inner_footer .f_logo {
			float: left;
			font-size: 0;
		}
			footer #inner_footer .f_logo h5 {
				display: inline-block;
				font-size: 16px;
			}
				footer #inner_footer .f_logo h5 img {
					width: 107px;
					height: 37px;
					vertical-align: middle;
				}
			footer #inner_footer .f_logo p {
				display: inline-block;
				padding: 0 15px;
				color: #FFFFFF;
				font-size: 16px;
			}
		footer #inner_footer .f_menu {
			float: right;
			text-align: right;
			font-size: 0;
		}
			footer #inner_footer .f_menu p {
				display: inline-block;
				width: 200px;
				font-size: 16px;
			}
			footer #inner_footer .f_menu p:nth-child(1) {
				width: 100px;
			}
			footer #inner_footer .f_menu p:nth-child(2) {
				width: 200px;
			}

#gotodownload {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 100;
}

/* wordpress */
.pagination {
	padding-top: 30px;
	text-align: center;
}
	.pagination .page-numbers {
		display: inline-block;
		padding: 0.5em;
	}
	.pagination .page-numbers.current {
		color: #767676;
	}
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.bold {
	font-weight: bold;
}
.ml20 {
	margin-left: 20px;
}
.show_pc {
	display: block;
}
.show_sp {
	display: none;
}
.view_pc {
	display: inline;
}
.view_sp {
	display: none;
}

@media screen and (max-width:767px) {
	body {
		font-size: 14px;
	}
	.wrapper {
		padding: 0 15px;
	}
	/* ヘッダー */
	header #inner_header {
		padding: 0;
		position: relative;
		height: 60px;
	}
		header #inner_header .h_logo {
			width: 100%;
		}
			header #inner_header .h_logo img {
				max-width: 180px;
			}
		header #inner_header .h_menu p {
			display: none;
		}

	#main {
		margin-top: 60px;
	}

		#main .grayarea {
			padding: 60px 0 60px !important;
		}

		#main .inner_main {
		}
		#main #newslist.inner_main {
			padding-bottom: 100px;
		}
		#main #newscontents.inner_main {
			padding-bottom: 100px;
		}
		#main #bloglist.inner_main {
			padding-bottom: 100px;
		}
		#main #blogcontents.inner_main {
			padding-bottom: 100px;
		}
		#main #finish.inner_main {
			padding-bottom: 60px;
		}
			#main .ttl_area {
				padding: 60px 0 40px;
			}
			#main .grayarea .ttl_area {
				padding: 0 0 40px;
				text-align: center;
			}
				#main .ttl_area p.nar {
					margin-top: 10px;
				}
				#main h2.ttl_main {
					font-size: 28px;
				}
				#main .ttl_gray {
					border-radius: 10px;
					margin-top: 30px;
					padding: 10px;
					font-size: 16px;
				}
				#main h2#about.ttl_main {
					font-size: 5.0vw;
				}
				#main h3.ttl_sub {
					font-size: 18px;
				}
				#main h3.ttl_sub.cnt {
					padding-top: 0;
					font-size: 14px;
				}
					#main .ttl_area p {
						margin-top: 30px;
						font-size: 18px;
					}
					#main .ttl_area p.caption {
						font-size: 12px;
					}

			/* bnner */
			#main .bnn01_01 {
				margin: 60px auto 0;
			}

			/* About */
			#main .about01 {
				margin-bottom: 20px;
			}
				#main .about02_01 p {
					margin-bottom: 30px;
				}

		/* Jirei */
		#main .jirei01_01 {
			margin-bottom: 80px;
			padding: 0;
		}
		#main .jirei01_02 {
			margin-bottom: 80px;
		}
		#main .jirei01_03 {
			margin: 0 0 80px;
		}
		#main .jirei01_04 {
			margin-bottom: 80px;
			padding: 0;
			font-size: 12px;
		}
				#main .jirei01_04 ul.movielist > li {
					margin-bottom: 20px;
					width: calc((100% - 15px)/2);
				}
					#main .jirei01_04 ul.movielist > li p:nth-child(1).twoline_sp {
						padding-top: 4px;
						height: 44px;
						line-height: 20px;
					}
		#main .jirei01_05 {
			margin: 0 auto 80px;
			text-align: center;
		}
			#main .jirei01_05 p {
				margin-bottom: 10px;
			}
				#main .jirei01_05 p img {
					max-width: 284px;
				}

		/* merit */
		#main .merit01_01 .merit01_01_table {
			display: table;
			margin-bottom: 20px;
			width: 100%;
		}
			#main .merit01_01 .merit01_01_td {
				display: table-cell;
				padding: 0 0 0 10px;
				height: 40px;
				vertical-align: middle;
				font-size: 12px;
				line-height: 1.2em;
			}
			#main .merit01_02 p {
				margin-bottom: 30px;
			}

			#main .service00 {
				margin-bottom: 60px;
				max-width: 650px;
			}
				#main .service00 p {
					display: inline-block;
					font-size: 0;
						width: 32%;
				}
				#main .service00 p:nth-child(2) {
					margin: 0 2%;
				}
					#main .service00 p img {
						max-width: 205px;
					}
			#main .service01_table {
				display: block;
			}
				#main .service01_table_l {
					display: block;
					max-width: none;
				}
				#main .service01_table_r {
					display: block;
					margin-top: 20px;
					padding-left: 0;
					min-width: auto;
				}
					#main .service01_table_r h4 {
						font-size: 16px;
					}
					#main .service01_table_r p {
						font-size: 14px;
					}
			#main .service02 {
				margin-bottom: 50px;
			}
				#main .service02 img {
					margin-bottom: 10px;
				}
			#main .service02_2 {
				margin-bottom: 60px;
				font-size: 12px;
			}
				#main .service02_2 p {
					margin-bottom: 20px;
				}
				#main .service02_2 p:nth-child(3) {
					margin-bottom: 0;
				}

		#main .service03 {
			margin-bottom: 60px;
		}
			#main .service03_menu {
				margin-left: -5px;
				margin-right: -5px;
			}
				#main .service03_menu dl {
					margin-bottom: 20px;
					padding: 10px 10px;
					border-radius: 30px;
					font-size: 2.65vw;
				}
			#main .service03_link p {
				font-size: 14px;
				white-space: nowrap;
			}
				#main .service03_link p a:after {
					margin-left: 8px;
					width: 12px;
					height: 12px;
				}

					#main .link01 ul li {
						margin-bottom: 20px;
						width: calc((100% - 20px)/2);
					}

			#main .download01 {
			}
				#main .download01_table {
					display: block;
					width: 100%;
				}
					#main .download01_table_l {
						display: block;
						width: 100%;
					}
						#main .download01_table_l p .checkbox {
							padding: 12px 0 12px 34px;
						}
					#main .download01_table_r {
						display: block;
						width: 100%;
					}

			#main .campane {
				margin-top: 30px;
				width: 200px;
				font-size: 16px !important;
				background-size: 100% auto;
			}
			#main .uketsuke {
				margin: 10px auto 20px;
				padding: 10px 0;
				width: 200px;
				background: #599a92;
				color: #FFFFFF;
				font-size: 16px !important;
			}
			#main .redtxt {
				font-size: 16px !important;
			}
			#main .normaltxt {
				font-size: 14px !important;
			}

			#main #form {
				margin-bottom: 100px;
			}
				#main .download01 .error {
					margin-left: 0;
					text-align: center;
				}
				#main .form .required::before {
					font-size: 12px;
				}
				#main .form .input {
					margin-bottom: 30px;
				}
				#main .form .checkbx {
					margin-bottom: 50px;
				}
					#main .form .radiobx li, #main .form .checkbx li {
						margin-top: 10px;
						font-size: 12px;
					}

					.radio {
						margin: 0 0 8px 0;
					}
						.radio:after {
							margin-top: 14px;
						}
						.checkbox:after {
							margin-top: 12px;
						}
						.radio:before {
							margin-top: 19px;
						}
						.checkbox:before {
							margin-top: 15px;
						}

					#main .form .btn_next_w {
						max-width: 260px;
					}
					#main .form .btn_next_w input[type="submit"], #main .form .btn_next_w input[type="button"] {
						margin: 0 calc((100% - 200px)/4);
						width: 100px;
					}

			#main .copy {
				margin-bottom: 30px;
			}
				#main .copy .tel {
					font-size: 140%;
				}

	/* フッター */
	footer {
		height: auto;
		line-height: normal;
	}
		footer #inner_footer {
			padding: 20px 0;
			width: 100%;
			height: auto;
			display: block;
		}
			footer #inner_footer .f_logo {
				float: none;
				text-align: center;
			}
				footer #inner_footer .f_logo h5 {
					display: block;
				}
					footer #inner_footer .f_logo h5 img {
						max-width: 150px;
					}
				footer #inner_footer .f_logo p {
					display: block;
					margin-top: 20px;
				}
			footer #inner_footer .f_menu {
				float: none;
				margin: 20px auto 0;
				max-width: 250px;
				text-align: center;
				box-sizing: border-box;
			}
				footer #inner_footer .f_menu p {
					white-space: nowrap;
				}
				footer #inner_footer .f_menu p:nth-child(1) {
					width: 35%;
					text-align: left;
				}
				footer #inner_footer .f_menu p:nth-child(2) {
					width: 60%;
					text-align: right;
				}

	#gotodownload img {
		width: 150px;
	}

	/* ドロワー */
	#dr-btn {
		display: block;
		position: fixed;
		padding: 1px 0;
		right: 10px;
		top: 9px;
		width: 36px;
		height: 40px;
		z-index: 999;
		border: none;
		outline: none;
		background: rgba(255, 255, 255, 0.1);
		cursor: pointer;
	}
		#dr-btn span {
			display: block;
			background: #000;
			width: 30px;
			height: 3px;
			position: absolute;
			transition: all 0.4s;
			-moz-border-radius: 3px;
			-webkit-border-radius: 3px;
			border-radius: 3px;
		}
		#dr-btn span:first-child {
			top: 10px;
		}
		#dr-btn span:nth-child(2) {
			margin-top: -2px;
			top: 50%;
		}
		#dr-btn span:last-child {
			bottom: 11px;
		}
		#dr-btn.dr-open span:first-child {
			-moz-transform: translateY(9px) rotate(45deg);
			-ms-transform: translateY(9px) rotate(45deg);
			-webkit-transform: translateY(9px) rotate(45deg);
			transform: translateY(9px) rotate(45deg);
		}
		#dr-btn.dr-open span:nth-child(2) {
			opacity: 0;
		}
		#dr-btn.dr-open span:last-child {
			-moz-transform: translateY(-7px) rotate(-45deg);
			-ms-transform: translateY(-7px) rotate(-45deg);
			-webkit-transform: translateY(-7px) rotate(-45deg);
			transform: translateY(-7px) rotate(-45deg);
		}

	#dr-menu {
		display: block;
		position: fixed;
		top: 60px;
		left: 30%;
		width: 70%;
		height: calc(100% - 60px);
		overflow: auto;
		z-index: 101;
		background: #fff;
		display: none;
	}
		#dr-menu a {
			color: #333;
		}
		#dr-menu span {
			color: #333;
		}
			#dr-menu .menu > li {
				margin: 0;
				sbackground: url("../images/arrow_menu_sp.png") no-repeat;
				sbackground-position: left 30px center;
			}
				#dr-menu .menu > li a,
				#dr-menu .menu > li span {
					position: relative;
					display: block;
					padding: 20px 15px 20px 40px;
					font-size: 18px;
					text-decoration: none;
				}
				#dr-menu .menu > li a:hover,
				#dr-menu .menu > li span:hover {
					text-decoration: none;
				}
		#dr-menu .sub {
			padding: 15px 15px;
		}
		.dr-overlay {
			position: fixed;
			top: 60px;
			left: 0;
			width: 100%;
			height: 100%;
			background: transparent;
			z-index: 100;
			pointer-events: none;
		}
		.dr-open .dr-overlay {
			position: fixed;
			top: 60px;
			left: 0;
			width: 100%;
			height: 100%;
			background: rgba(0, 0, 0, 0.2);
			pointer-events: none;
		}

	.show_pc {
		display: none;
	}
	.show_sp {
		display: block;
	}
	.view_pc {
		display: none;
	}
	.view_sp {
		display: inline;
	}
}