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

img {
	width: auto;
}

.plr0{
    padding-right: 0;
    padding-left: 0;
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
body {
	margin: 0 auto;
	font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "Noto Sans JP", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
li {
	list-style: none;
}
header {
	position: fixed;
	background-color: #fff;
	width: 100vw;
	z-index: 1;
}
address {
	font-style: normal;
}
article img {
	width: 100%;
}
textarea {
	resize: vertical;
}
#greeting {
	margin: 0 auto;
}
#greeting p {
	font-size: 14px;
}
.headline {
	max-width: 1024px;
	height: auto;
}
#greeting h3 {
	font-weight: normal;
}
#greeting ul {
	font-size: 12px;
	margin: 0;
}

#choice {
	background: url(../images/background_1.jpg) no-repeat;
}

.movie {
	padding-top: 60px;
}

#menu {
	background: url(../images/background_2.jpg) no-repeat;
	font-size: 16px;
	background-position: center;
}
#menu table {
	text-align: left;
	width: 500px;
	margin: 0 auto;
}
#menu td:first-of-type {
	font-weight: bold;
}
#menu h2 {
	margin: 24px 0 0 0;
}

#qa {
	background-image: url(../images/background_3.jpg);
	color: #fff;
}
#qa dl {
	/*width: 900px;*/
	margin: 0 auto;
}
	#qa dt {
		background: url(../images/q_icon.png) no-repeat left;
		height: 48px;
		padding-left: 60px;
    		background-size: 48px;
		padding-top: 24px;
}

.add-bottom {
	padding-bottom: 18px;
}
.add-bottom02 {
	padding-bottom: 45px;
}
.contact_jump {
	position: fixed;
	z-index: 1;
	height: 208px;
	width: 169px;
	right: 0;
	top: 240px;
}

#query {}
/*form {
	max-width: 900px;
	margin: 0 auto;
}*/
label {
	display: inline-block;
	vertical-align:top;
	color: #fff;
	background-color: #0aa00a;
}
input,select {
	height: 48px;
}
input,textarea,select {
	box-sizing: border-box;
	width: 500px;
	font-size: 16px;
	border: #E4DFDF solid thin;
}
input:focus, textarea:focus {
	border-color: #000;
}
textarea {
	vertical-align: top;
	height: 6em;
}
select {
}
.container {
	width: 1024px;
	margin: 0 auto;
}
.required {
	color: red;
}
.text-center {
	text-align: center;
}
.center {
	text-align: center;
}
small {
	font-size: 12px;
}
button {
	font-size: 20px;
	width: 300px;
	height: 48px;
	color: #fff;
	background-color: #0aa00a;
}
h1 {
}
li {
}
footer {
	text-align: center;
	background-color: #9BB272;
	color: #fff;
}
footer div {
	padding: 40px 0;
}
footer img {
	padding-bottom: 20px;
}
footer a {
	color: #fff;
	text-decoration: none;
}
footer span {
	font-size: x-large;
}
.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-color: #FFFFFF;
	opacity: 0.9;
	z-index: 1000000;
}
.overlay .overlay-inner {
	display: flex;
	height: 100%;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
@media screen and (min-width: 769px){
	body {
		font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
	}
	.menu-text, .menu-icon, .sp{
		display: none;
	}
	header ul {
		float: right;
		margin: 0;
		height: 100px;
		padding: 0;
	}
	header li {
		float: left;
		height: 100px;
		display: table;
	}
	header li:hover {
		background:#e79000;
	}
	header li:hover a{
		color: white;
	}
	header a {
		color: #000;
		font-size: 14px;
		text-decoration: none;
		padding: 0 8px;
		display: table-cell;
		vertical-align: middle;
	}
	header .logo {
		margin: 1vw 0 0 0;
		float: left;
	}
	header .logo img {
		height: 70px;
		padding-left: 12px;
	}
	#greeting li {
		padding: 2px 0;
	}
	#choice p {
		font-size: 28px;
	}
	#choice li {
		font-size: 16px;
	}
	#firsttime article {
		position: relative;
		height: 290px;
	}
	#firsttime dl {
		width: 492px;
		height: 162px;
		background-image: url(../images/firsttime-background.png);
		padding: 24px 36px 8px;
	}
	.firsttime-img {
		width: 480px;
		height: 270px;
	}
	.odd-img {
		float: left;
		padding-top: 20px;
	}
	.odd-text {
		position: absolute;
		top: 40px;
		right: 0;
	}
	#firsttime dt {
		font-size: 28px;
	}
	#firsttime dd {
		font-size: 20px;
		margin-left: 0;
	}
	.even-img {
		float: right;
		padding-top: 20px;
	}
	.even-text {
		position: absolute;
		top: 40px;
	}
	section {
		padding: 56px 0;
	}
	.br-sp {
		display:none;
	}
	.profile_img {
		float: left;
		width: 40%;
		text-align: right;
		height: 240px;
		margin: 0 24px 0 0;
	}
	.profile_img img {
		height: 180px;
	}
	.profile-text {
		text-align: left;
		height: 240px;
		font-size: 14px;
	}
	.drawer-toggle {
		display: none;
	}
	#greeting h3 {
		margin: -20px 0 0 0;
	}
	.last-text {
		padding: 24px 36px 24px !important;
	}
	#menu td:first-of-type {
		padding-left: 120px;
	}
	#menu td {
		padding-left: 60px;
	}
	label {
		padding: 12px 200px 12px 12px;
		margin-right: -5px;
		width: 140px;
	}
	.lastlabel {
		height: 50px;
		padding-top: 34px;
	}
	textarea {
		height: 84px!important;
	}
	#qa dd {
		font-weight: bold;
		margin-left: 0;
		border-bottom: dotted thin #fff;
		background: url(../images/a_icon.png) no-repeat left;
    		background-size: 48px;
		height: 48px;
		padding-left: 60px;
		padding-top: 24px;
}
}
@media screen and (max-width: 768px) {
	header {
		height: 64px;
	}
	.logo {
		height: 72px;
		padding: 0 50px 0 0;
	}
	.logo-image {
		padding-top: 1vw;
	}
	.menu-icon {
		float: right;
		height: 50px !important;
		width: 50px !important;
		margin: 4px;
	}
	.menu-button {
		float: right;
		height: 50px;
		width: 50px;
		background-color: #e79000;
		top: 8px;
		right: 8px;
		position: absolute;
	}
	.tel {
		position: absolute;
		right: 66px;
		top: 4px;
	}
	.query {
		position: absolute;
		right: 128px;
		top: 4px;
	}
	.drawer-nav {
		z-index: 10000;
	}
	.drawer-overlay {
		z-index: 0;
	}
	.drawer-hamburger-icon {
		margin: -4px 0 0 0;
	}
	.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
		background-color: white;
	}
	.drawer--right.drawer-open .drawer-nav {
		display: block;
		background-color: #000000;
	}
	.drawer--right.drawer-close .drawer-nav {
		display: block;
		background-color: #000000;
	}
	.drawer-menu {
		padding-top: 60px;
	}
	.drawer-menu-item {
		color: #ffffff;
		text-decoration: none;
	}
	.drawer-menu-item:hover{
		color: #ffffff !important;
		text-decoration: none!important;
	}
	.menu-text {
		position: absolute;
		width: 100%;
		left: 0;
		bottom: 0;
		font-size: 11px;
		text-align: center;
		color: white;
		line-height: 16px;
	}
	.wrapper {
		width: 95vw;
		margin: 0 auto;
	}
	#greeting {
		width: 100vw;
		margin: 0 auto;
	}
	#greeting p {
		font-size: 10px;
	}
	.headline {
		max-width: 100%;
		height: auto;
	}
	.container {
		width: 100vw !important;
		margin: 0 auto;
	}
	.logo img {
		width: 50%;
		height: auto;
		padding-left: 12px;
		max-width: 280px;
		z-index: 10001;
	}
	header h1 {
		margin: 0;
	}
	.contact_jump {
		display: none;
	}
	 .drawer--right.drawer-open, .drawer-hamburger {
		margin: 0 5px 0 0;
		padding: 0 4px;
		position: absolute;
		z-index: 10001;
	}
	.drawer--right.drawer-open .drawer-hamburger {
		right: 0;
	}
	#choice {
		background: url(../images/background_sp_1.jpg) no-repeat;
		background-size: cover;
	}
	#choice p {
		font-size: 20px;
	}
	#choice ul {
		font-size: 3vw;
		padding: 0 2%;
	}
	section {
		padding: 34px 0;
	}
	.br-pc {
		display:none;
	}
	#greeting ul{
		padding: 0;
	}
	.profile {
		margin: 10px 0;
		height: 200px;
		width: 100%;
		display: table-cell;
	}
	.profile_img {
		max-width: 40%;
		float: left;
		text-align: right;
	}
	.profile_img img {
		width: 80%;
		height: auto;
	}
	.profile-text {
		text-align: left;
		width: 56%;
		float: left;
		padding: 0 0 0 4%;
	}
	.profile-text h2 {
		font-size: 12px;
		margin: 0;
	}
	.profile-text h3 {
		font-size: 12px;
		margin: 0;
	}
	#greeting ul {
		font-size: 10px;
	}
	#firsttime article img {
		width: 70%;
		height: auto;
		margin: auto;
	}
	#firsttime article {
		text-align: center;
		font-size: 10px;
		margin: 12px 0 0 0;
	}
	#firsttime article dl{
		background-image: url(../images/firsttime-background.png);
	}
	#firsttime article dd {
		font-size: 3vw;
		padding: 8px;
	}
	#firsttime article dt {
		font-size: 3vw;
		/*font-size: 12px;*/
		padding: 4px 8px 0 8px;
		font-weight: bold;
	}
	.odd-text, .even-text {
		text-align: left;
		width: 70%;
		margin: auto;
	}
	dd {
		margin: auto;
	}
	#menu {
		background: url(../images/background_sp_2.jpg) no-repeat;
		font-size: 10px;
		background-size: cover;
	}
	#menu h2 {
		/*font-size: 14px;*/
		font-size: 5vw;
	}
	#menu div {
		width: 90%;
		margin: auto;
		font-size: 3vw;
	}
	#menu table {
		width: 360px;
		padding-left: 20%;
	}
	#qa dl {
		width: 100%;
		font-size: 10px;
	}
	form {
		width: 100%;
	}

	form p {
		font-size: 0;
		margin: 0 0 8px 0;
	}
	small {
		font-size: 10px;
	}
#qa dt {
    background: url(../images/q_icon.png) no-repeat left;
    height: 48px;
    padding-left: 60px;
    background-size: 48px;
    padding-top: 24px;
    font-size: 3vw;
}
}
@media screen and (min-width:641px){
	.sp {
		display: none;
	}
}
@media screen and (max-width:640px){
	.logo-image {
		padding-top: 1.5vw;
	}
	.pc {
		display: none;
	}
}
@media screen and (max-width:540px){
	.logo-image {
		padding-top: 2.5vw;
	}
	#menu table {
		margin: auto;
	}
}
@media screen and (max-width:440px){
	.logo-image {
		padding-top: 5vw;
	}
label {
    width: 32%;
    height: 26px;
    font-size: 14px;
    padding: 7px 0 3px 10px!important;
    margin: 0 0 0 4%;
    font-size: 3.5vw!important;
}
#qa dt {
    background: url(../images/q_icon.png) no-repeat left;
    height: 48px;
    padding-left: 13%!important;
    background-size: 10%!important;
    padding-top: 24px;
    font-size: 3vw;
}
#qa dd {
    margin-left: 0;
    border-bottom: dotted thin #fff;
    background: url(../images/a_icon.png) no-repeat left top;
    background-size: 10%!important;
    padding-left: 13%!important;
    padding-bottom: 10px;
    font-size: 3vw;
}
.square {
    content: '';
    border: solid 1px #aaa;
    left: -3px!important;
    padding: 0 10px!important;
    position: absolute;
    height: 20px!important;
}
}
@media screen and (max-width:370px){
	footer img {
		width: 90%;
		height: auto;
	}
	input, textarea, select {
		width: 50%;
		}
	label {
		width: 38%;
		padding-left: 6px;
	} 
	.menu-button {
		width: 44px;
		height: 44px;
	}
	.menu-text {
		font-size: 10px;
	}
	.drawer--right.drawer-open, .drawer-hamburger {
		margin: 0 4px 0 0;
	}
	.drawer-hamburger {
		padding: 0 2px;
	}
	.drawer-hamburger-icon {
		margin: -8px 0 0 0;
	}
	.tel {right: 56px;
	}
	.menu-icon {
		width: 44px !important;
		height: 44px !important;
	}
	.query {
		right: 108px;
	}
	button {
		width: 90%;
	}

}
@media screen and (max-width:767px){
.spleft{
	text-align:left!important;
}
.spleft20{
	text-align:left!important;
	margin-left:20px;
}
.spfontvw3 p{
	font-size: 3vw!important;
}
.profile-text h2,
.profile-text h3,
.profile-text ul li{
	font-size: 3vw!important;
}
#qa dd {
    /* font-weight: bold; */
    margin-left: 0;
    border-bottom: dotted thin #fff;
    background: url(../images/a_icon.png) no-repeat left top;
    background-size: 48px;
    /* height: 48px; */
    padding-left: 60px;
    padding-bottom: 10px;
    /* padding-top: 24px; */
    font-size: 3vw;
}

.add-bottom02 {
	padding-bottom: 18px;
}

}

@media screen and (max-width:1024px){
.headline {
    width: 100%;
    max-width: 1024px;
    height: auto;
}
.container {

    width: 100%;
    margin: 0 auto;
}
#menu table {
    width: 100%!important;
}

	input, textarea, select {
		width: 57%;
		padding: 0;
		margin: 0 3% 0 0;
		height: 36px;
	}
	label {
		width: 32%;
		height: 26px;
		font-size: 14px;
		padding: 10px 0 0 10px;
		margin: 0 0 0 4%;
	}
}

@media screen and (min-width:1025px){
.pconly{
	display:none!important;
}
}

.listsample li{
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
 
.check li{
	position:relative;
	padding-left:30px;
}
 
.check li:after, .check li:before{
	content:''; 
	display:block; 
	position:absolute; 
	top:6px; 
	left:9px; 
	height:11px; 
	width:3px; 
	background:#aaa; 
	border-radius:10px;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
}
.check li:before{
	top:10px; 
	left:3px;
	height:8px; 
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
}

.square{
    content: '';
    border: solid 1px #aaa;
    left: -5px;
    padding: 0 12px;
    position: absolute;
    height: 25px;
}

.required,
.validation-block{
    color: #a94442;
}

.contact_content{
    margin-bottom:20px;
}
.modal {
    background: rgba(0,0,0,0.2);
}

.btn-default {
    color: #333;
    background-color: #fff;
    border-color: #ccc;
}

.modal-body,
.btn{
    margin-right: auto;
    margin-left: auto;
    display: block;
}

.btn-w{
	max-width: 120px;
}

.flex{
	display: flex;
    flex-wrap: wrap;
}

.button-back-to-home{
	margin-right: auto;
    margin-left: auto;
    max-width: 120px;
    display: block;
    color: #333;
    background-color: #fff;
    padding: 12px 12px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    background-image: none;
    border: 1px solid #333;
    border-radius: 4px;
    width: 360px;
    text-decoration: none;
}
