@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,900");
/*@import url("font-awesome.min.css");*/


/* Reset */

	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block;
	}

	body {
		line-height: 1;
	}

	ol, ul {
		list-style: none;
	}

	blockquote, q {
		quotes: none;
	}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	body {
		-webkit-text-size-adjust: none;
	}


/*コピーライト*/
.copyright{
	text-align: center;
	font-size: 12px;
	padding: 0 0 5px 0;
	color: #666666;
}

.txt_l{
	text-align:left;
}
.txt_r{
	text-align:right;
}
.txt_c{
	text-align:center;
}
.wSm50{
    width: 50%;
}
.wSm70{
    width: 70%;
}
.wSm75{
    width: 75%;
}
.wSm80{
    width: 80%;
}

.mb10{
	margin-bottom: 10px;
}
.mb20{
	margin-bottom: 20px;
}
.mb50{
	margin-bottom: 50px;
}
.mt10{
	margin-top: 10px;
}
.mt20{
	margin-top: 20px;
}
.mt30{
	margin-top: 30px;
}
.mt40{
	margin-top: 40px;
}
.mt100{
	margin-top: 100px;
}
.m-tb10{
	margin: 10px auto;
}

/*文字*/
.fs09{
	font-size: 9px;
}
.fs10{
	font-size: 10px;
}
.fs12{
	font-size: 12px;
}
.fs14{
	font-size: 14px;
}
.fs16{
	font-size: 16px;
}
.fs18{
	font-size: 18px;
}
.fs20{
	font-size: 20px;
}
.fs22{
	font-size: 22px;
}
.fs24{
	font-size: 24px;
}
.fs26{
	font-size: 26px;
}
/*カラー*/
/*テキストカラー*/
.bk01{
    color:#000000;
}
.gr01{
	color:#666666;
}
.gr02{
	color:#CCCCCC;
}
.blur01{
	color:#002333;
}
.blur02{
	color:#0067B3;
}
.blur03{
	color:#0091C1;
}
.blur04{
	color: #2B70AA;
}
.green01{
	color:#008371;
}
.green02{
	color:#009999;
}
.green03{
	color:#006666;
}
.red01{
	color:#FF0000;
}

.lin05{
    line-height: 0.5;
}
.lin10{
    line-height: 1.0;
}
.lin15{
    line-height: 1.5;
}
.lin18{
    line-height: 1.8;
}
/*リンクカラー*/
a{
	text-decoration: none;
	list-style: none;
}
a:link { color: #59677F; }
a:visited { color: #59677F; }
a:hover { color: #008080; }
a:active { color: #008080; }



/* Box Model */

	*, *:before, *:after {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	html {
		height: 100%;
	}

	body {
		background: #ffffff;
		height: 100%;
		min-width: 320px;
	}

		body.is-loading *, body.is-loading *:before, body.is-loading *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
		}

/* Spinner */

	@-moz-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@-webkit-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@-ms-keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

	@keyframes spinner-rotate {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
		}

		100% {
			-moz-transform: scale(1) rotate(360deg);
			-webkit-transform: scale(1) rotate(360deg);
			-ms-transform: scale(1) rotate(360deg);
			transform: scale(1) rotate(360deg);
		}
	}

/* Loader */

	@-moz-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@-webkit-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	/*@-ms-keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}*/

	@keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@-moz-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-webkit-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-ms-keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@keyframes spinner-hide {
		0% {
			-moz-transform: scale(1) rotate(0deg);
			-webkit-transform: scale(1) rotate(0deg);
			-ms-transform: scale(1) rotate(0deg);
			transform: scale(1) rotate(0deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		99% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: 100001;
		}

		100% {
			-moz-transform: scale(0.5) rotate(360deg);
			-webkit-transform: scale(0.5) rotate(360deg);
			-ms-transform: scale(0.5) rotate(360deg);
			transform: scale(0.5) rotate(360deg);
			color: #e5e6e7;
			z-index: -1;
		}
	}

	@-moz-keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	@-webkit-keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}



	body {
		text-decoration: none;
	}

		body:before {
			-moz-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-webkit-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-ms-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			-moz-transform-origin: 50% 50%;
			-webkit-transform-origin: 50% 50%;
			-ms-transform-origin: 50% 50%;
			transform-origin: 50% 50%;
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			font-family: FontAwesome;
			font-style: normal;
			font-weight: normal;
			text-transform: none !important;
			color: #e5e6e7;
			content: '\f1ce';
			cursor: default;
			display: block;
			font-size: 2em;
			height: 2em;
			left: 50%;
			line-height: 2em;
			margin: -1em 0 0 -1em;
			opacity: 0;
			position: fixed;
			text-align: center;
			top: 50%;
			width: 2em;
			z-index: -1;
		}

		body:after {
			-moz-animation: overlay-hide 1.5s ease-in forwards !important;
			-webkit-animation: overlay-hide 1.5s ease-in forwards !important;
			-ms-animation: overlay-hide 1.5s ease-in forwards !important;
			animation: overlay-hide 1.5s ease-in forwards !important;
			background: #ffffff;
			content: '';
			display: block;
			height: 100%;
			left: 0;
			opacity: 0;
			position: fixed;
			top: 0;
			width: 100%;
			z-index: -1;
		}

		body.is-loading:before {
			-moz-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			-webkit-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			-ms-animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			z-index: 100001;
		}

		body.is-loading:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			opacity: 1;
			z-index: 100000;
		}

	@media (-webkit-min-device-pixel-ratio: 2) {

		body:before {
			line-height: 2.025em;
		}

	}


/* Type */

	body, input, textarea, select {
		font-family: "Source Sans Pro", "sans-serif";
		font-weight: 300;
		font-size: 18pt;
		line-height: 1.75em;
		color: #39454b;
		letter-spacing: 0.025em;
	}

		@media screen and (max-width: 1920px) {

			body, input, textarea, select {
				font-size: 17pt;
			}

		}

		@media screen and (max-width: 1680px) {

			body, input, textarea, select {
				font-size: 15pt;
			}

		}

		@media screen and (max-width: 1280px) {

			body, input, textarea, select {
				font-size: 13pt;
			}

		}

		@media screen and (max-width: 1000px) {

			body, input, textarea, select {
				font-size: 13pt;
			}

		}

		@media screen and (max-width: 736px) {

			body, input, textarea, select {
				font-size: 12pt;
				line-height: 1.5em;
			}

		}

	h1, h2, h3, h4, h5, h6 {
		font-weight: 900;
		color: inherit;
		letter-spacing: -0.0325em;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h2 {
		font-size: 2.25em;
		line-height: 1.25em;
		letter-spacing: -0.05em;
	}

	@media screen and (max-width: 736px) {

		h2 {
			font-size: 1.5em;
		}

	}

	strong, b {
		font-weight: 900;
		color: inherit;
	}

	em, i {
		font-style: italic;
	}

	a {
		-moz-transition: color 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out;
		transition: color 0.2s ease-in-out;
		color: #98c593;
	}

	sub {
		position: relative;
		top: 0.5em;
		font-size: 0.8em;
	}

	sup {
		position: relative;
		top: -0.5em;
		font-size: 0.8em;
	}

	hr {
		border: 0;
		border-top: solid 1px #e5e6e7;
	}

	blockquote {
		border-left: solid 0.5em #e5e6e7;
		padding: 1em 0 1em 2em;
		font-style: italic;
	}

	p, ul, ol, dl, table {
		margin-bottom: 1em;
	}
/* Box */
	.box {
		background: #FFFFFF;
		color: #333333;
		padding: 2em;
        opacity: 0.8;
}

		.box > :last-child {
			margin-bottom: 0;
		}

		.box.style2 {
			padding: 2.0em 2.5em;
            border-radius: 5px;
            border-bottom: 2px solid #999999;
		}

		@media screen and (max-width: 736px) {

			.box {
				padding: 1em;
			}

				.box.style2 {
                    margin: 0 auto;
        			padding: 1.5em 1.3em;
                    border-radius: 5px;
					background-color: rgba(245,255,250);
				}
		}
/* Button */

/*	input[type="button"],
	input[type="submit"],
	input[type="reset"],*/
	.button,button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out;
		background-color: #EFEFEF;
        border-top: 2px solid #CFCFCF;
        border-bottom: 4px solid #999999;
        border-left: 1px solid #CFCFCF;
        border-right: 1px solid #999999;
        border-radius: 3.0em;
		color: #666666;
        font-weight: bold;
		display: inline-block;
		height: 3.0em;
		line-height: 2.5em;
		outline: 0;
		padding: 0 2em 0 2em;
		position: relative;
		text-align: center;
        vertical-align: middle;
		text-decoration: none;
		cursor: pointer;        
}

/*		input[type="button"].down,
		input[type="submit"].down,
		input[type="reset"].down,*/
		.button.down,
		button.down {
			width: 5em;
			height: 5em;
			line-height: 4.5em;
			padding: 0;
			background-image: url("images/dark-arrow.svg");
			background-position: center center;
			background-repeat: no-repeat;
			text-indent: -10em;
			overflow: hidden;
		}

			/*input[type="button"].down.anchored,
			input[type="submit"].down.anchored,
			input[type="reset"].down.anchored,*/
			.button.down.anchored,
			button.down.anchored {
				bottom: 0;
				border-bottom: 0;
				border-radius: 3em 3em 0 0;
				height: 4.5em;
				margin-left: -2.5em;
			}

/*		input[type="button"].anchored,
		input[type="submit"].anchored,
		input[type="reset"].anchored,*/
		.button.anchored,
		button.anchored {
			position: absolute;
			left: 50%;
		}

/*		input[type="button"]:hover,
		input[type="submit"]:hover,
		input[type="reset"]:hover,*/
		.button:hover,
		button:hover {
			background-color: #a8cea4;
        	font-weight: bold;
		}

/*		input[type="button"]:active,
		input[type="submit"]:active,
		input[type="reset"]:active,*/
		.button:active,
		button:active {
			background-color: #5DA055;
		}

		input[type="button"].style2,
		input[type="submit"].style2,
		input[type="reset"].style2,
		.button.style2,
		button.style2 {
			background-color: transparent;
			border: solid 2px #e5e6e7;
			color: inherit;
		}

			input[type="button"].style2:hover,
			input[type="submit"].style2:hover,
			input[type="reset"].style2:hover,
			.button.style2:hover,
			button.style2:hover {
				background-color: rgba(229, 230, 231, 0.25);
			}

			input[type="button"].style2:active,
			input[type="submit"].style2:active,
			input[type="reset"].style2:active,
			.button.style2:active,
			button.style2:active {
				background-color: rgba(229, 230, 231, 0.375);
			}

			input[type="button"].style2.down,
			input[type="submit"].style2.down,
			input[type="reset"].style2.down,
			.button.style2.down,
			button.style2.down {
				background-image: url("images/arrow.svg");
                background-repeat: no-repeat;
	            background-position: center;
	            background-size: 95%;
			}

@media screen and (max-width: 430px) {
    
/*			input[type="button"].down.anchored,
			input[type="submit"].down.anchored,
			input[type="reset"].down.anchored,*/
			.button.down.anchored,
			button.down.anchored {
				bottom: 0;
				border-bottom: 0;
				border-radius: 3em 3em 0 0;
				height: 4.5em;
				margin-left: -2.5em;
			}

/*		input[type="button"].anchored,
		input[type="submit"].anchored,
		input[type="reset"].anchored,*/
		.button.anchored,
		button.anchored {
			position: absolute;
			left: 50%;
		}
    
}
    

/*----//// Form ////////////////////////////////////----*/
.box{
    margin: 0;
    padding: 0;
}
.contact iframe{
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 1000px;
    z-index: 1000;    
}

.contact_form {
	border-collapse: collapse;
	margin: 0 auto;
    width: 80%;
}
.contact_form tr {
	border-top: none;
    /*border-top: solid 1px #efefef;*/
}
.contact_form tr:last-child {
	border-bottom: none;
    /*border-bottom: solid 1px #efefef;*/
}
.contact_form th {
	position: relative;
	width: 250px;
	padding: 25px 0 10px;
	background-color: #ffffff;
    vertical-align: top;
	text-align: left;
    font-weight:bold;    
	box-sizing: border-box;
}
.contact_form th.required:before {
	content: "";
	width: 48px;
	height: 28px;
	position: absolute;
	top: 21px;
	right: 0;
	background: #ffffff;
	color: #a8cea4;
	font-size: 16px;
	line-height: 28px;
	text-align: center;
}
.contact_form td {
	padding: 14px 20px;
	box-sizing: border-box;
}
.contact_form p {
	margin: 0;
    padding: 0;
}
.contact_form inpu[type="radio"]:checked {
    display: none
}

.contact_form input[type="text"],
.contact_form textarea,
.contact_form select{
    border-radius: 2px;    
}
.contact_form input[type="text"],
.contact_form textarea,
.contact_form select{
    width: 100%;
}
.contact_form input[type="text"],
.contact_form textarea {
	background: #f9f9f9;
	border: solid 1px #dddddd;
	font-size: 16px;
	padding: 12px 20px;
	transition: 0.3s ease-in-out;
	box-sizing: border-box;
	vertical-align: top;
	outline: none;
}

/*.contact_form select {
	background: #f9f9f9;
	border: solid 1px #dddddd;
	font-size: 16px;
	padding: 12px 50px 12px 20px;
	transition: 0.3s ease-in-out;
	box-sizing: border-box;
	vertical-align: top;
	outline: none;
    -webkit-appearance: none;
    -moz-appearance: none; 
    appearance: none;   
}*/

.contact_form div{
    width: 100%;
}

.contact_form input[type="radio"] {
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 5px;
	box-sizing: border-box;
}
.contact_form div.f_radioBt{
    border: 1px solid #999;
}
.contact_form div.f_radioBt label{
    display: inline-block;
    margin-left: 10px;
    padding: 0;
}

/*.contact_form td.arrow{
    position: relative;
}
.contact_form td.arrow:after {
  content: "";
    position: absolute;
    right: 40px;
    top: 38px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #999;
    border-left: 2px solid #999;
    transform: translateY(-50%) rotate(
-135deg
)

.contact_form select option {
	color:#666;  
}*/
.contact_form input[type="text"]:focus,
.contact_form textarea:focus {
	border-color: #009999;
}
.contact_form input[type="checkbox"] {
	width: 20px;
	height: 20px;
	margin: 0;
	padding-top: 20px 0;
	box-sizing: border-box;
}
.contact_form .checkbox_label {
	cursor: pointer;
	vertical-align: top;
    margin: 50px 0 0 0;
	padding: 0;
    width: 100%;
}
.contact_form .checkbox_txt {
	vertical-align: top;
    margin: 0;
    line-height: 1.2;
}
.contact_form .radio_label {
	cursor: pointer;
	vertical-align: middle;
    margin: 45px 0 0 0;
	padding: 0;
    width: 100%;
}
.contact_form .radio_txt {
	vertical-align: middle;
    margin: 0;
    line-height: 0.8;
}
.contact_form label.error {
	display: block;
	margin: .3em 0 0 0;
	color: #d70d19;
}
p.confirm_btn {
    display: block;
	margin: 30px auto;
	padding: 0;
}    
p.confirm_btn input {
    width: 400px;
	height: 55px;
	outline: none;
	border: none;
	background: #009999;
	border-radius: 40px;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
p.confirm_btn input[type="reset"]{
	background: #999999;
}

@media screen and (max-width: 550px) {
    .box{
        margin: 0;
        padding: 0;
    }
    
    .contact{
        width: 100%;
    }    
    .contact iframe{
        margin: 0 auto;
        width: 100%;
        height: 1500px;
        z-index: 1000;
        scroll-behavior: auto;
    }
    
    .contact_form {
        margin: 0 auto;
        padding: 0;
        width: 90%;
    }
    .contact_form table {
        margin: 0;
        padding: 0;
    }
	.contact_form tr,
	.contact_form td {
		display: block;
		width: 100%;
		margin: 10px auto 20px auto;
        padding: 0;
        border: none;
	}   
	.contact_form th {
		display: block;
		width: 100%;
	    padding: 5px 20px 0 5px;
	}
    .contact_form th.required:before {
	width: 48px;
	height: 28px;
	top: 4px;
	right: 15px!important;
	font-size: 18px;
    }
    .contact_form input[type="text"],
    .contact_form select,
    .contact_form textarea {
        width: 100%;
        margin: 0;
        padding: 12px 0;
    }
    .contact_form td.arrow:after {
      content: "";
        position: absolute;
        right: 20px;
        top: 22px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #999;
        border-left: 2px solid #999;
        transform: translateY(-50%) rotate(
    -135deg
    );
      font-size: 20px;
      pointer-events: none;
    }
    p.confirm_btn {
        display: block;
    }     
    p.confirm_btn input {
    margin: 10px auto;
    width: 90%;
        
    } 
    
}


/*

	form {
		margin: 0 0 2em 0;
	}
	

		form .field {
            width: 100%;
			margin: 0 0 15px 0;
		}

				form .field.half {
				    float: left;
                    width: 50%;
                    height: 45px;            
                    margin: 0 0 1.5em 0;
					padding: 0 0 0 0;
				}

                form .field.half input[type="email"]{
				    float: right;
                    width: 49%;
                    height: 55px;            
                    margin: 0 0 1.5em 0; 
					padding: 0 0.2em 0 0;
				}

		form > .actions {
			margin: 1.5em 0 0 0 !important;
		}		

        form ul.actions {
            width: 100%;
		}

        form ul.actions li {
            display: inline-block;
		}

		@media screen and (max-width: 480px) {

			form .field.half {
				width: clac(100%/2);
				float: none;
				padding: 0;
			}

				form .field.half.first {
					padding: 0;
				}

		}

	label {
		display: block;
        text-align: left;
	}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="tel"],
	input[type="search"],
	input[type="url"],select,textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
		color: #39454b;
		display: block;
		width: 100%;
		padding: 0.65em 0.75em;
		background: none;
		border: solid 2px #CCCCCC;
		color: inherit;
		border-radius: 0.5em;
		outline: none;
	}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		input[type="tel"]:focus,
		input[type="search"]:focus,
		input[type="url"]:focus,
		select:focus,
		textarea:focus {
			border-color: #72AEC3;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="tel"],
	input[type="search"],
	input[type="url"],
	select {
		line-height: 1.35em;
	}

	textarea {
		min-height: 8em;
	}

	select[name="prefecture"]{
      color: #666666;
        
	}

    ::placeholder {
      color: #3E3E3E;
    }

	::-moz-focus-inner {
		border: 0;
	}
*/
	::-webkit-input-placeholder {
        opacity: 0.9;
		/*opacity: 0.375;*/
	}

	:-moz-placeholder {
        opacity: 0.9;
		/*opacity: 0.375;*/
	}

	::-moz-placeholder {
        opacity: 0.9;
		/*opacity: 0.375;*/
	}

	:-ms-input-placeholder {
        opacity: 0.9;
		/*opacity: 0.375;*/
	}

	.formerize-placeholder {
        opacity: 0.9;
	}

/* Icon */

	.icon {
		text-decoration: none;
	}

		.icon:before {
			display: inline-block;
			font-family: FontAwesome;
			font-size: 1.25em;
			text-decoration: none;
			font-style: normal;
			font-weight: normal;
			line-height: 1;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
		}

		.icon > .label {
			display: none;
		}

/* Image */

	.image {
		position: relative;
		display: inline-block;
        opacity: 1.0;
	}

		.image:before {
			content: '';
			position: absolute;
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
			/*background: url("images/overlay.png");*/
		}

		.image img {
			display: block;
			width: 100%;
		}

		.image.featured {
			display: block;
			width: 100%;
			margin: 0 0 2em 0;
		}

		.image.fit {
			display: block;
			width: 100%;
		}

		.image.left {
			float: left;
			margin: 0 2em 2em 0;
		}

		.image.centered {
			display: block;
			margin: 0 0 2em 0;
		}

			.image.centered img {
				margin: 0 auto;
				width: auto;
			}

/* List */

	ul.default {
		list-style: disc;
		padding-left: 1em;
	}

		ul.default li {
			padding-left: 0.5em;
		}

	ul.icons {
		cursor: default;
	}

		ul.icons li {
			display: inline-block;
		}

		ul.icons a {
			display: inline-block;
			width: 2em;
			height: 2em;
			line-height: 2em;
			text-align: center;
			border: 0;
		}

	ul.menu {
		cursor: default;
	}

		ul.menu li {
			display: inline-block;
			line-height: 1em;
			border-left: solid 1px #e5e6e7;
			padding: 0 0 0 0.5em;
			margin: 0 0 0 0.5em;
		}

			ul.menu li:first-child {
				border-left: 0;
				padding-left: 0;
				margin-left: 0;
			}


        /* 変更箇所 */
		ul.menu li.copyright{
        margin: 10px;
        padding: 0;
        font-size:13px;    
        text-align: center;
}

	ul.actions {
		cursor: default;
	}

		ul.actions li {
			display: inline-block;
			margin: 0 0 0 0.5em;
		}

			ul.actions li:first-child {
				margin-left: 0;
			}

	ol.default {
		list-style: decimal;
		padding-left: 1.25em;
	}

		ol.default li {
			padding-left: 0.25em;
		}

/* Sections/Article */

	header {
		margin-bottom: 0.5em;
	}

		header p {
			display: block;
			margin: 1em 0 0 0;
			padding: 0 0 0.3em 0;
            line-height: 1.5;
		}

		header img {
			display: block;
			margin: 1em 0 0 0;
			padding: 0 0 0.5em 0;
		}

	footer.nengamain {
        display: block;
        position: relative;
        z-index: 10000;
		margin-top: 18em;
	}

	footer.nengamain a {
        cursor: pointer;
	}

		@media screen and (max-width: 400px) {
        	footer.nengamain {
		    margin-top: 28em;
	        }
        }

	footer.topmain {
        display: block;
        position: relative;
        z-index: 10000;
		margin-top: 2em;
	}

	footer.topmain a {
        cursor: pointer;
	}

/* Table */

	table {
		width: 100%;
	}

		table.default {
			width: 100%;
		}

			table.default tbody tr:nth-child(2n+2) {
				background: rgba(229, 230, 231, 0.5);
			}

			table.default td {
				padding: 0.5em 1em 0.5em 1em;
			}

			table.default th {
				text-align: left;
				font-weight: 900;
				padding: 0.5em 1em 0.5em 1em;
			}

			table.default thead {
				background: #39454b;
				color: #ffffff;
			}

			table.default tfoot {
				background: #e5e6e7;
			}

/* Poptrox */

	.poptrox-popup {
		-moz-box-sizing: content-box;
		-webkit-box-sizing: content-box;
		-ms-box-sizing: content-box;
		box-sizing: content-box;
		background: #fff;
		padding-bottom: 3em;
		box-shadow: 0 0.1em 0.15em 0 rgba(0, 0, 0, 0.15);
	}

		.poptrox-popup .loader {
			position: absolute;
			top: 50%;
			left: 50%;
			margin: -1em 0 0 -1em;
			width: 2em;
			height: 2em;
			display: block;
			font-size: 2em;
		}

			.poptrox-popup .loader:before {
				-moz-animation: spinner-rotate 0.75s infinite linear !important;
				-webkit-animation: spinner-rotate 0.75s infinite linear !important;
				-ms-animation: spinner-rotate 0.75s infinite linear !important;
				animation: spinner-rotate 0.75s infinite linear !important;
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				font-family: FontAwesome;
				font-style: normal;
				font-weight: normal;
				text-transform: none !important;
				color: #e5e6e7;
				content: '\f1ce';
				cursor: default;
				display: block;
				height: 2em;
				left: 0;
				line-height: 2em;
				position: absolute;
				text-align: center;
				top: 0;
				width: 2em;
			}

		.poptrox-popup .caption {
			position: absolute;
			bottom: 0;
			left: 0;
			background: #ffffff;
			width: 100%;
			height: 3em;
			line-height: 2.8em;
			text-align: center;
			cursor: default;
			z-index: 1;
			font-size: 0.9em;
		}

		.poptrox-popup .nav-next,
		.poptrox-popup .nav-previous {
			-moz-transition: opacity 0.2s ease-in-out;
			-webkit-transition: opacity 0.2s ease-in-out;
			-ms-transition: opacity 0.2s ease-in-out;
			transition: opacity 0.2s ease-in-out;
			position: absolute;
			top: 0;
			width: 50%;
			height: 100%;
			opacity: 0;
			cursor: pointer;
			background: rgba(0, 0, 0, 0.01);
			-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
		}

		.poptrox-popup .nav-next:before,
		.poptrox-popup .nav-previous:before {
			content: '';
			position: absolute;
			width: 96px;
			height: 64px;
			background: url("images/poptrox-nav.svg");
			top: calc(50% - 1.5em);
			margin: -32px 0 0 0;
		}

		.poptrox-popup:hover .nav-next,
		.poptrox-popup:hover .nav-previous {
			opacity: 0.5;
		}

		.poptrox-popup:hover .nav-next:hover,
		.poptrox-popup:hover .nav-previous:hover {
			opacity: 1.0;
		}

		.poptrox-popup .nav-previous:before {
			-moz-transform: scaleX(-1);
			-webkit-transform: scaleX(-1);
			-ms-transform: scaleX(-1);
			transform: scaleX(-1);
			-ms-filter: "FlipH";
			filter: FlipH;
		}

		.poptrox-popup .nav-next {
			right: 0;
		}

			.poptrox-popup .nav-next:before {
				right: 0;
			}

		.poptrox-popup .nav-previous {
			left: 0;
		}

			.poptrox-popup .nav-previous:before {
				left: 0;
			}

		.poptrox-popup .closer {
			-moz-transition: opacity 0.2s ease-in-out;
			-webkit-transition: opacity 0.2s ease-in-out;
			-ms-transition: opacity 0.2s ease-in-out;
			transition: opacity 0.2s ease-in-out;
			position: absolute;
			top: 0;
			right: 0;
			width: 64px;
			height: 64px;
			text-indent: -9999px;
			z-index: 2;
			opacity: 0;
			-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
		}

			.poptrox-popup .closer:before {
				content: '';
				display: block;
				position: absolute;
				right: 16px;
				top: 16px;
				width: 40px;
				height: 40px;
				border-radius: 100%;
				box-shadow: inset 0 0 0 2px #fff;
				background: url("images/poptrox-closer.svg") center center;
				color: #ffffff !important;
			}

		.poptrox-popup:hover .closer {
			opacity: 0.5;
		}

			.poptrox-popup:hover .closer:hover {
				opacity: 1.0;
			}

		body.is-touch .poptrox-popup .nav-next,
		body.is-touch .poptrox-popup .nav-previous,
		body.is-touch .poptrox-popup .closer {
			opacity: 1.0 !important;
		}

		@media screen and (max-width: 736px) {

			.poptrox-popup .nav-next:before,
			.poptrox-popup .nav-previous:before {
				width: 48px;
				height: 32px;
				background-size: contain;
				margin: -16px 0 0 0;
			}

			.poptrox-popup .closer:before {
				right: 12px;
				top: 12px;
				width: 20px;
				height: 20px;
				box-shadow: inset 0 0 0 1px #fff;
				background-size: contain;
				opacity: 0.65;
			}

		}

/* Gallery */

 
    .clearfix::after {
      content: "";
      display: block;
      clear: both;
    }
	.gallMain_tt{
        width:100%;
        height:auto;
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
        justify-content:space-between;
    }
    .btn_min_contact{
        text-align: right;
    }
    .btn_min_contact button{
        width:250px;
        height: 40px;
        font-size:14px;
        background-color:#FCFCFC;
        border: 2px solid #CCCCCC;
        box-shadow: 0 5px 34px rgba(50,50,93,.1), 0 3px 6px rgba(0,0,0,.08);
    }
    .btn_min_contact button:hover,.btn_min_contact button:focus {
        background-color:#F1F2E5;
        transition: all .5s;
    }
    @media screen and (max-width: 550px) {
    .btn_min_contact{
        text-align: center;
    }
    }
/**--------------------------------------
  カード型
--------------------------------------*/
.l-wrapper_tt {
    margin: 1rem auto;
    width:calc(94%/3);
    height: auto;
    display: flex;
    flex-direction:column;
}

.l-wrapper_tt:hover,.l-wrapper_tt:focus {
  transform: translateY(-5px);
  box-shadow: 0 7px 34px rgba(50,50,93,.1), 0 3px 6px rgba(0,0,0,.08);
  transition: all .5s;
  height: 100%;
  border-radius: 10px;
}

.card_tt {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 5px #ccc;
}
.card_tt img {
  padding: 25px 0 0 0;
  max-width: 80%;
  height: 80%;
}
.card_tt img.sizeSL {
  padding: 25px 0 0 0;
  max-width: 60%;
  height: 60%;
}
.card_tt h2{
    padding: 25px 0 0 0;
    font-size:40px;
}
.card-content_tt {
  padding: 8px 10px 10px;
}
.card-title_tt {
  margin: 0;
  padding: 0 0 10px 0;
  font-size: 18px;    
  font-weight: bold;
  color: #333;
  line-height: 1.0;    
}
.card-tag_tt {
  display: inline-flex;
  list-style: none;
  flex-wrap: wrap;    
  margin: 0;
  padding: 0;
}
.card-tag_tt li {
  border: 1px solid #C2C9AF;
  margin: 0 2px 5px 2px;
  padding: 5px;
  padding-top: 0;
  padding-bottom: 0;
  width: auto;
  border-radius: 18px;    
  color: #C2C9AF;
  font-size: 11px;   
}
.card-text_tt {
  color: #777;
  font-size: 14px;
  line-height: 1.2;
  padding-bottom: 10px;
  text-align: left;    
}
.card-link_tt {
  text-align: center;
  border-top: 1px solid #eee;
  margin: 0 10px;    
  padding: 10px;
  font-size: 14px;    
  text-decoration: none;
}
.card-link_tt span{
  margin-left:10px;
  color: #CCC;
}
.card-content_tt p {
  margin-bottom:0;
}
@media screen and (max-width: 550px) {
    .l-wrapper_tt {
    margin: 1rem auto;
    width: 100%;
    height: auto;
}
.card_tt img {
  padding: 15px 0 0 0;
  max-width: 95%;
  height: 95%;
}
.card_tt img.sizeSL {
  padding: 15px 0 0 0;
  max-width: 70%;
  height: 70%;
}
.card_tt h2{
    padding: 15px 0 0 0;
    font-size:34px;
}    
.card-text_tt {
  font-size: 16px;  
}    
}

/* Header */

	#header {
		position: fixed;/* 固定 */
		z-index: 10000;
		left: 0;
		top: 0;
		width: 100%;
		height: 3em;
		line-height: 3em;
        border-bottom:2px solid #EFEFEF;
        background-color: #C1D3B5;
        opacity: 0.7;
		/*background: rgba(0, 0, 0, 0.66);*/
		box-shadow: 0 0 0.15em 0 rgba(0, 0, 0, 0.2);
	}

		#header h1 {
			position: absolute;
			left: 1em;
			top: -0.4em;
			height: 3em;
			line-height: 3em;
			cursor: default;
            color: #606977;
		}

			#header h1 a {
				font-size: 4.25em;
			}

		#header nav.p-nav {
			position: absolute;
			right: 0.5em;
			top: 0;
			height: 3em;
			line-height: 3em;
            width: 40%;
		}

			#header nav.p-nav ul {
				margin: 0;
			}

				#header nav.p-nav ul li {
					display: inline-block;
					margin-left: 0.5em;
					font-size: 0.8em;
                    text-align: center;
                    width: calc(100%/6);
				}

					#header nav.p-nav ul li a {
						display: block;
						padding: 0 0.5em 0 0.5em;                        
						color: inherit;
						text-decoration: none;
						height: 3em;
						line-height: 3em;
						outline: 0;
                        font-weight: bold;
                        color: #373737;
                    }
					#header nav.p-nav ul li a:hover,#header nav.p-nav ul li a:focus {
                        color: #537F6C;
                        border-bottom: 3px solid #537F6C;
					}

                #header nav#g-nav,
                #header div.openbtn{
                display: none;  
                }  


		@media screen and (max-width: 736px) {

			#header {
				height: 2.5em;
				line-height: 2.5em;
                opacity: 0.9;
			}

				#header h1 {
					position: relative;
					left: 0;
					top: -1.5em;
					height: 2.5em;
					line-height: 2.5em;
				}

					#header h1 a {
						font-size: 5em;
					}                   
		}

	body {
		padding-top: 3em;
	}

		@media screen and (max-width: 736px) {

			body {
				padding-top: 2.5em;
			}

		}

/* Main */

	.main {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		position: relative;
		margin: 0;
		overflow-x: hidden;
	}

		.main > .content {
			width: 50em;
			max-width: calc(100% - 4em);
			margin: 0 auto;
		}

			.main > .content > :last-child {
				margin-bottom: 0;
			}

		.main.fullscreen {
			min-height: 100%;
		}

		.main.style1 {
			-moz-align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;
			align-items: center;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			text-align: center;
			padding: 3em 0 3em 0;
            background-color: #ffffff;
		}

			.main.style1 h1 {
                position: relative;
                z-index: 10000;                 
				font-size: 7em;
				line-height: 0.5em;
                color:#28433C;
			}
			.main.style1 h1 img {
                position: relative;
                z-index: 10000;                 
				width: 50%;
                margin: 0 auto;
                padding: 0;
			}


			.main.style1 h2 {
				font-size: 4.25em;
				line-height: 1em;
			}

			/*.main.style1 p.logo {
                position: relative;
				left: 0;
				top: 0;
                bottom: 10px;
                width: 100%;
			}*/

			.main.style1 p {
				font-size: 1.0em;
                color:#000;
				line-height: 0.8em;
                margin-bottom:20px; 
			}

            .main.style1 .content ul.one_policy01{
                position: relative;
                z-index: 10000; 
                margin: 20px auto;
                padding: 0;
                width: 50%;
            } 
            .main.style1 .content ul.one_policy01 li {
                display: inline-block;
                flex-wrap: wrap;
                margin-top: 0;
                padding:0 3px;
                color:#4D7D7C;
                font-weight: bold;
                text-align: center;
            }

            /*========= イベントバナーCSS ===============*/
                .main.style1 .content p.top_eveBnr{
                    position: relative;
                    display: block;
                    top:-1em;
                    right:-25em;
                    margin: 0;
                    padding: 0;
                }
                .main.style1 .content p.top_eveBnr img{
                    width: 20%;
                }
            /*========= end　イベントバナーCSS ===============*/
        @media screen and (max-width: 950px) {
            /*========= イベントバナーCSS ===============*/
                .main.style1 .content p.top_eveBnr{
                    top:-9em;
                    right:-15em;

                }
                .main.style1 .content p.top_eveBnr img{
                    width: 30%;
                }
            /*========= end　イベントバナーCSS ===============*/            
}
        @media screen and (max-width: 550px) {
            /*========= イベントバナーCSS ===============*/
                .main.style1 .content p.top_eveBnr{
                    top:-4em;
                    right:0;

                }
                .main.style1 .content p.top_eveBnr img{
                    width: 60%;
                }
            /*========= end　イベントバナーCSS ===============*/
}

        @media screen and (max-width: 550px) {
            .main.style1 h1 {
                position: relative;
                z-index: 10000;
                margin: 10px auto;
				font-size: 6em;
				line-height: 0.5em;
                color:#5C8180;
			}
			.main.style1 h1 img {
                position: relative;
                z-index: 10000;                 
				width: 330px;
                margin: 0 auto;
                padding: 0;
			}            
            .main.style1 h4 {
                position: relative;
                z-index: 10000;
                margin: 15px auto;
				font-size: 0.9em;
				line-height: 0.5em;
                color:#5C8180;
			}            
            
            .main.style1 .content ul.one_policy01{
                margin: 20px auto;
                padding: 0;
                width: 100%;
            }
            
            .main.style1 .content ul.one_policy01 li {
                display: inline-block;
                flex-wrap: wrap;
                margin: 0;
                padding:0;
                color:#999999;
                font-size: 1em;
                line-height: 1.0;
                font-weight: bold;
                text-align: center;
                width: auto;
            }
}

			.main.style1 > .content {
				-moz-transition: opacity 1s ease;
				-webkit-transition: opacity 1s ease;
				-ms-transition: opacity 1s ease;
				transition: opacity 1s ease;
				-moz-transform: translateZ(0);
				-webkit-transform: translateZ(0);
				-ms-transform: translateZ(0);
				transform: translateZ(0);
				opacity: 1.0;
				margin: 0;
			}

			.main.style1.inactive > .content {
				opacity: 0;
			}

		.main.style2 {
			-moz-align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;
			align-items: center;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			padding: 3em 0 3em 0;
			overflow: hidden;
		}

			.main.style2 > .content {
				-moz-transition: -moz-transform 1s ease;
				-webkit-transition: -webkit-transform 1s ease;
				-ms-transition: -ms-transform 1s ease;
				transition: transform 1s ease;
				-moz-transform: translateZ(0);
				-webkit-transform: translateZ(0);
				-ms-transform: translateZ(0);
				transform: translateZ(0);
				position: relative;
				width: 50%;
				margin: 0;
}

/*			.main.style2.left {
				-moz-justify-content: -moz-flex-start;
				-webkit-justify-content: -webkit-flex-start;
				-ms-justify-content: -ms-flex-start;
				justify-content: flex-start;
			}

			.main.style2.right {
				-moz-justify-content: -moz-flex-end;
				-webkit-justify-content: -webkit-flex-end;
				-ms-justify-content: -ms-flex-end;
				justify-content: flex-end;
			}*/
			.main.style2.left {
				-moz-justify-content: -moz-center;
				-webkit-justify-content: -webkit-center;
				-ms-justify-content: -ms-center;
				justify-content: center;
			}

			.main.style2.right {
				-moz-justify-content: -moz-center;
				-webkit-justify-content: -webkit-center;
				-ms-justify-content: -ms-center;
				justify-content: center;
			}
            .main.style2.inactive.left > .content {
				-moz-transform: translateX(-80%);
				-webkit-transform: translateX(-80%);
				-ms-transform: translateX(-80%);
				transform: translateX(-80%);
                opacity: 0;
			}

			.main.style2.inactive.right > .content {
				-moz-transform: translateX(80%);
				-webkit-transform: translateX(80%);
				-ms-transform: translateX(80%);
				transform: translateX(80%);
                opacity: 0;
			}

            /* 変更箇所 */
            .main.style2 .content ul.one_policy01{
                margin: 0;
                padding: 0;
            } 
            .main.style2 .content ul.one_policy01 li {
                display: inline-block;
                flex-wrap: wrap;
                border-bottom: 4px solid #EFEFEF;
                margin: 10px;
                padding: 5px 0px;
                width: 300px;
                color:#64A1B6;
                font-size: 0.9em;
                font-weight: bold;
                text-align: center;
            }
/*        @media screen and (max-width: 736px) {
            .main.style2 .content ul.one_policy01 li {
                display: inline-block;
                flex-wrap: wrap;
                margin: 10px;
                padding: 5px 0px;
                width: 200px;
                font-weight: bold;
                text-align: center;
            }
        }*/
        @media screen and (max-width: 550px) {
                .main.style2 .content ul.one_policy01 li {
                margin: 3px auto;
                padding: 10px;    
                width: 100%;
                font-weight: bold;
                text-align: center;
            }
                .main.style2 header h2 {
                text-align: center;
                font-size: 28px;
            }
            
        }

            /* end 追加  */

		.main.style3 {
			text-align: center;
			padding: 8em 0 10em 0;
            
		}

			.main.style3 .content > header {
				margin-bottom: 1em;
			}

			.main.style3.primary {
				background: #F1F2E5;
			}

			.main.style3.secondary {
				background: #F1F2E5;
			}



            /* end 追加  */

		.main.style4 {
			text-align: center;
			padding: 5em 0 20em 0;
		}

			.main.style4 .content > header {
				margin-bottom: 0.5em;
			}

			.main.style4.primary {
				background: #E9F4E4;
			}

			.main.style4.secondary {
				background: #E9F4E4;
			}/*#DEE7D9*/

            /* end 追加  */

		.main.dark {
			color: #ffffff;
		}

			.main.dark a {
				color: inherit;
			}

			.main.dark .button.style2 {
				border-color: #D4E6E2;
                background-color: #9FCBC1;
                opacity: 0.5;
			}

				.main.dark .button.style2:hover {
					background-color: rgba(255, 255, 255, 0.5);
				}

				.main.dark .button.style2:active {
					background-color: rgba(255, 255, 255, 0.5);
				}

				.main.dark .button.style2.down {
					background-image: url("images/dark-arrow.svg");
				}

		body.is-touch .main {
			background-attachment: scroll !important;
		}

		@media screen and (max-width: 1920px) {

			.main.style2 .content {
				width: 50%;
			}

		}

		@media screen and (max-width: 1280px) {

			.main.style2 .content {
				width: 50%;
			}

		}

		@media screen and (max-width: 1000px) {

			.main.style2 .content {
				width: 60%;
			}

		}

		@media screen and (max-width: 736px) {

			.main.fullscreen {
				height: auto !important;
			}

			.main.style1 {
				padding: 4em 10px 4em 10px;
			}

				.main.style1 h2 {
					font-size: 3em;
				}

			.main.style2 {
				padding: 4em 10px 4em 10px;
			}


				.main.style2 .content {
					width: 100%;
					max-width: 100%;
					text-align: left;
					-moz-transform: none;
					-webkit-transform: none;
					-ms-transform: none;
					transform: none;
				}

			.main.style3 {
				text-align: center;
				padding: 3em 10px 6em 10px;
			}

		}

		@media screen and (max-width: 480px) {

			.main > .content {
				max-width: calc(100% - 1.5em);
			}
            
				/*.main.style2:before, .main.style2:after {
					display: none !important;
				}

				.main.style2 .button.anchored {
					display: none;
				}*/

		}

/* Footer */

	#footer {
		position: relative;
		height: 5em;
		line-height: 5em;
		margin: 0;
		background-color: #CFCFCF;
		color:#666666;
        text-align: center;
		overflow: hidden;
	}

		#footer a {
			color: inherit;
            
		}

			#footer a:hover {
				color: #333333;
                opacity: 0.5;
			}

		#footer ul.actions {
			position: absolute;
			left: 1em;
			top: 0.25em;
			height: 5em;
			line-height: 5em;
			margin: 0;
		}

			#footer ul.actions li {
				font-size: 1.25em;
				margin: 0;
			}

				#footer ul.actions li a {
					padding: 0.5em;
				}

		#footer ul.menu {
			position: absolute;
			right: 2em;
			top: 0;
			height: 5em;
			line-height: 5em;
			margin: 0;
		}

			#footer ul.menu li {
				border-left-color: rgba(185, 186, 187, 0.2);
				font-size: 0.6em;
			}

		@media screen and (max-width: 1000px) {

			#footer {
				height: auto;
				line-height: inherit;
				text-align: center;
				padding: 2em 1em 2em 1em;
			}

				#footer ul.actions {
					position: relative;
					left: 0;
					top: 0;
					height: auto;
					line-height: inherit;
					margin: 0 0 1em 0;
				}

				#footer ul.menu {
					position: relative;
					right: 0;
					top: 0;
					height: auto;
					line-height: inherit;
				}

		}

		@media screen and (max-width: 736px) {

			#footer ul.menu li {
				border-left: 0;
				padding: 1em 0 0 0;
				margin: 0;
				display: block;
			}

				#footer ul.menu li:first-child {
					padding-top: 0;
				}

				#footer ul.menu li a {
					line-height: 1.5em;
				}

		}

/* nenga */

	/* #nenga{
		background-image:url("https://tubelic.com/images/common/img_hPn_noloop.gif"); /*url("images/overlay.png"),*/
		/*background-attachment: fixed, fixed;
		background-position: top center, bottom center;
		background-repeat: no-repeat;
        width: 100%;
        height: 100%;
	}*/

/* top */
    /*========= body背景色画像 ===============*/
	/*#top{
		background-image:url("../../images/intro04.png"); /*url("images/overlay.png"),*/
		/*background-attachment: fixed, fixed;
		background-position: top left, bottom center;
		background-repeat: no-repeat;
        width: 100%;
        height: 100%;
	}*/
/*普段*/
#top{
		background-image:url("../../images/intro02.png");
        background-size:100%;
		background-attachment: fixed, fixed;
		background-position: top left, bottom center;
		background-repeat: no-repeat;
        width: 100%;
        height: 100%;
	}
/*キノコ：秋*/
	/*#top{
		background-image:url("../../images/intro_kinoko.png"); 
		background-attachment: fixed, fixed;
		background-position: top left, bottom center;
		background-repeat: no-repeat;
        width: 100%;
        height: 100%;
	}*/


    /*========= body背景色の変化CSS ===============*/

    #top::before{
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        opacity: 0.5;        
        /*animation: bgchange 25s ease infinite;変化の時間を変更したい場合は20sの部分を好きな時間に変更*/
        background:linear-gradient(45deg, #58AFB2,#68B677,#EFF198);/*デフォルトグラデーションを定義*/
        /*background:linear-gradient(45deg, #008080,#adff2f,#ffc0cb);/*グラデーションを定義*/
  background-size: 200% 150%;/*サイズを大きくひきのばす*/
  animation: bggradient 30s ease infinite;
    }

/*秋：グラデーションを定義*/
/*background:linear-gradient(45deg, #fffacd,#ffd700,#ff7f50);*/
   /* @keyframes bgchange{
          0%  {background:#B2F0FB;}
          10% {background:#83DBE7;}
          20% {background:#ffe6e1;}
          35% {background:#fdcb9e;}
          55% {background:#fdcbc1;}
          65% {background:#C7E6DB;}
          80% {background:#A2DEC9;}
          100% {background:#CAE7F9;}
    }*/

    @keyframes bggradient{
      0% {
        background-position: 0% 50%;
      }
      50% {
        background-position: 100% 50%;
      }
      100% {
        background-position: 0% 50%;
      }
    }
    /*========= end body背景色の変化CSS ===============*/

/* One */

	#one {
		background: url("images/overlay.png"), url("../../images/one002.png");
		background-size: 256px 256px, cover;
		background-attachment: fixed, fixed;
		background-position: top left, center center;
	}

/* Two */

	#two {
		background: url("images/overlay.png"), url("../../images/two.jpg");
		background-size: 256px 256px, cover;
		background-attachment: fixed, fixed;
		background-position: top left, center center;
	}

/* works */
    .text_com{
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .text_com p{
        font-size: 14px;
        text-align: center;
    }

		@media screen and (max-width: 738px) {
        .text_com p{
            text-align: left;
        }
    }



/* Contact */

	#contact {
		overflow: hidden;
		padding-bottom: 0;
	}
    #contact .box {
			display: block;
		}

/*		#contact .box {
			-moz-transition: -moz-transform 1s ease;
			-webkit-transition: -webkit-transform 1s ease;
			-ms-transition: -ms-transform 1s ease;
			transition: transform 1s ease;
			-moz-transform: translateY(0);
			-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
			transform: translateY(0);
			position: relative;
		}

		#contact.inactive .box {
			-moz-transform: translateY(100%);
			-webkit-transform: translateY(100%);
			-ms-transform: translateY(100%);
			transform: translateY(100%);
		}*/

		@media screen and (max-width: 736px) {

			#contact .box {
				padding-bottom: 2em;
			}

		}

/*================================================
 *  スライドショー
 ================================================*/
.slide {
    margin: 0 auto;
	width:100%;
	overflow:hidden;
	position:relative;
	margin-bottom:20px;
}

.slideInner {
	list-style:none;
	margin:0 0 5px 0;
	padding:0;
}
.slideInner li {
	position:absolute;
	width:90%;
	background:#fff;
	margin:0;
	padding:0;
}
.slideInner li img {
	width:80%;
	height:auto;
}

.slidePrev {
	position:absolute;
	width:50px;
	height:60px;
	left:0;
	cursor:pointer;
	z-index:100;
}

.slideNext {
	position:absolute;
	display:block;
	width:50px;
	height:60px;
	right:0;
	cursor:pointer;
	z-index:100;
}

.controlNav {
	  position:relative;
	  float:left;
	  left:50%;
}
.controlNav span {
	position:relative;
	left:-50%;
	float:left;
	margin:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	width:5px;
	height:5px;
	overflow:hidden;
	-webkit-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
	-moz-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
	box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
	background:#eee;
	text-indent:-9999px;
	vertical-align:middle;
}
.controlNav span:hover {
	background:#ccc;
	cursor:pointer;
}
.controlNav span.current {
	-webkit-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
	-moz-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
	box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
	background:#85d1c6;
}

/*========================
ページトップへ戻る
========================*/
#page-top {
    position: fixed;
    z-index: 3000;
    bottom: 20px;
    right: 20px;
}
#page-top a{
    display: block;    
}
#page-top a.button:hover{
    color: #FFF;    
    text-decoration: none;
    border: 2px solid #CCCCCC;
    background-color: #65874A;
    opacity: 0.6;    
}
#page-top a.button {
    border: 2px solid #CCCCCC;
    background-color: #CFDDC4;    
    text-decoration: none;
    width: 50px;
    height: 50px;
    margin: 0 auto;
    padding: 0 10px;
    text-align: center;
    border-radius: 50%;
    opacity: 0.5;        
    }
#page-top span.dli-arrow-up {
  display: inline-block;
  vertical-align: middle;
  color: #FFFFFF;
  line-height: 1;
  position: relative;
  width: 0.1em;
  height: 1em;
  background: currentColor;
}

#page-top span.dli-arrow-up::before {
  content: '';
  width: 0.8em;
  height: 0.75em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(-45deg);
  transform-origin: top right;
  position: absolute;
  top: -0.05em;
  right: 50%;
  box-sizing: border-box;
}


/*Close BackのCSS*/
#CloseBack {
    position: fixed;
    z-index: 10000;
    bottom: 10px;
    right: 10px;
    font-size: 80%;
    font-weight: 300;
}

#CloseBack input {
    display: block;
    text-decoration: none;
    color: #666;
    width: 60px;
    height: 50px;
    padding: 0;
    text-align: center;
    vertical-align: middle;
    border: 2px solid #FFFFFF;
    background-color: #EFEFEF;    
    border-radius: 5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;    
    opacity: 0.5;
}

#CloseBack input:hover {
    color: #FFF;    
    text-decoration: none;
    border: 2px solid #999999;
    background-color: #349A98;
    opacity: 0.8;
}

@media screen and (min-width: 780px) {
    #CloseBack input {
    display: none;
    }
}
@media screen and (max-width: 480px) {
    #CloseBack input {
    display: block;
    }
}

/*========= ハンバーガメニュー：ナビゲーションのためのCSS ===============*/

            #header nav#g-nav,
            #header div.openbtn {
					display: none;
				}


@media screen and (max-width: 550px) {
                    
            #header div.openbtn {
            display: block;
            background-color:#C8E9E8;
            border: 1px solid #CCCCCC;
            border-radius:2em;
            -webkit-border-radius:2em;
            -moz-border-radius:2em;        
            }
            #header nav#g-nav{
            display: block;
            }    
    
            .p-nav{
            display: none;
        }
}

/*========= ナビゲーションのためのCSS ===============*/
@media screen and (max-width: 550px) {
        nav#g-nav{
            /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
            position:fixed;
            z-index: 999;
            /*ナビのスタート位置と形状*/
            top:0;
            right: -120%;
            width:100%;
            height: 100vh;/*ナビの高さ*/
            /*動き*/
            transition: all 0.6s;
            background-color:#FFFFFF;
            opacity: 0.9;
        }

        /*アクティブクラスがついたら位置を0に*/
        nav#g-nav.panelactive{
            right: 0;
        }

        /*ナビゲーションの縦スクロール*/
        nav#g-nav.panelactive div#g-nav-list{
            /*ナビの数が増えた場合縦スクロール*/
            position: fixed;
            z-index: 10000; 
            width: 100%;
            height: 100vh;/*表示する高さ*/
            overflow: auto;
            -webkit-overflow-scrolling: touch;
        }   
    
        /*ナビゲーション*/
        nav#g-nav ul {
            /*ナビゲーション天地中央揃え*/
            position: absolute;
            z-index: 10000;
            top:50%;
            left:50%;
            transform: translate(-50%,-50%);
            width: 100%;            
        }
        /*リストのレイアウト設定*/
        nav#g-nav li{
            display: block;
            margin: 6px 5px 6px 15px;
            width: 90%;
            height: 100%;
            list-style: none;
            text-align: center;
            border: 1px solid #CCC;
            border-bottom: 3px solid #CCC;
            background-color:#ffffff;
            border-radius:5px;
            -webkit-border-radius:5px;
            -moz-border-radius:5px;            
        }
        nav#g-nav li a{
            display: block;
            padding: 5px 0;            
            width: 100%;
            height: 100%;
            font-weight: bold;
            color: #333;
            text-decoration: none;
            text-transform: uppercase;
            letter-spacing: 0.1em;
        }
        nav#g-nav li a:hover,
        nav#g-nav li a:focus,
        nav#g-nav li a:active{
            background-color:#86B8B7;
        }    

        /*========= ボタンのためのCSS ===============*/
        .openbtn{
            position:fixed;
            z-index: 10000;/*ボタンを最前面に*/
            top:10px;
            right: 10px;
            cursor: pointer;
            width: 50px;
            height:50px;
        }

        /*×に変化*/	
        .openbtn span{
            display: inline-block;
            transition: all .4s;
            position: absolute;
            left: 12px;
            height: 3px;
            border-radius: 2px;
            -webkit-border-radius:2px;
            -moz-border-radius:2px;      
            background-color: #333;
            width: 45%;
          }

        .openbtn span:nth-of-type(1) {
            top:13px;	
        }

        .openbtn span:nth-of-type(2) {
            top:21px;
        }

        .openbtn span:nth-of-type(3) {
            top:29px;
        }

        .openbtn.active span:nth-of-type(1) {
            top: 15px;
            left: 15px;
            transform: translateY(6px) rotate(-45deg);
            width: 35%;
        }

        .openbtn.active span:nth-of-type(2) {
            opacity: 0;
        }

        .openbtn.active span:nth-of-type(3){
            top: 27px;
            left: 15px;
            transform: translateY(-6px) rotate(45deg);
            width: 35%;
        }
}





/*========= レイアウトのためのCSS ===============*/

h1{
  font-size:1.2rem;
}

h2{
  font-size:2.5rem;
  text-align: center;
  margin: 0 0 5px 0;
}

p{
  margin-top:20px;  
}

small{
  color:#fff;
  display: block;
  text-align: center;
}

#header{
  padding: 20px;    
  width:100%;
}

section{
  padding:80px 30px;
}

section:nth-child(2n){
  background:#f3f3f3; 
}

#footer{
  background:#333;
  padding:20px;
}

/*========= 矢印 ===============*/
.dli-arrow-right {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  position: relative;
  width: 1em;
  height: 0.1em;
  background: currentColor;
}

.dli-arrow-right::before {
  content: '';
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
}
