@charset "UTF-8";

* {margin: 0px;padding: 0px;}
html {scroll-behavior: smooth;}
body{font-family:'Zen Kaku Gothic New', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;font-weight: 500;font-size:16px;line-height:1.6;color:#121010;background:#fff;padding:0;}

a{color:#cc0000;text-decoration: underline;}
a:hover{text-decoration: none;}

ul li{list-style:none;}

.exbox{background:#ececec;padding: 20px;margin-bottom: 40px;border-radius:10px;}
.pcimg{ display:block !important;}
.spimg{display: none !important;}

.pcimg02{ display:block !important;}
.spimg02{display: none !important;}

.txt-c{ text-align:center;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.f12{font-size:12px;}

header{
	width: 100%;
	background: #fff;
	padding: 25px 0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

header .inner{
	width:730px;
	margin: 0 auto;
	padding: 0 10px;
	display: flex;
align-items: center;
}

header .inner img{
	width: 140px;
	display: block;
}

header .inner a.btn {
  color: #fff;
  background: #00913c;
  padding: 10px 40px 10px 30px;
  display: inline-block;
  border-radius: 30px;
margin-left: auto;
	text-decoration: none;
	position: relative;
}

header .inner a.btn::after{
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}


header .inner a.btn:hover {
	opacity: 0.6;
}

.main{
	width: 100%;
	padding:101px 0px 0px;
}

.main .inner{
	width:750px;
	margin: 0 auto;
	padding: 0;
}

.main img{
	width:100%;
	padding:  0;
	margin: 0;
	vertical-align:bottom;
}


.cont01{
	width: 100%;
	padding: 0;
	margin: 0;
	border-bottom: 1px dotted #ccc;
}

.cont01 .inner{
	width:750px;
	margin:0 auto;
	padding:40px 0; 
}

.cont01-txt{text-align:center;}

.cont01 .inner img{
	width:100%;
	margin: 0 auto;
	display: block;
}

.cont01-2{
	width: 100%;
	padding: 0;
	margin: 0;
	background: #e9e9e9;
}

.cont01-2 .inner{
	width:730px;
	margin: 0 auto;
	padding:50px 10px;
}

.cont01-2 .inner h2 img{
	width: 80%;
	margin: 0 auto 30px;
	text-align: center;
	display: block;
}

.cont01-2 .inner dl dt span{
	font-size: 32px;
}

.cont01-2 .inner dl dt{
	font-size: 24px;
	margin-bottom: 10px;
	font-weight: bold;
}

.cont01-2 .inner dl dd{
	margin-bottom: 30px;
}

.cont01-2 .inner dl dd:last-child{
	margin-bottom: 0px;
}




.cont02{
	width: 100%;
	padding: 0;
	margin: 0;
	border-bottom: 1px dotted #ccc;
}

.cont02 .inner{
	width:750px;
	margin: 0 auto;
	padding:50px 0;
}

.cont02 .inner h2{
	font-size: 32px;
	text-align: center;
	margin-bottom: 30px;
}

.cont02 .inner p.sub-ttl{
	margin-bottom: 30px;
	text-align: center;
}

.cont02 .inner p.cont02-img img{
	width:100%;
	margin-bottom: 40px;
}

.cont02 .inner table{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
}

.cont02 .inner table tr{
  border-bottom:solid 1px #d3d3d3;
}

.cont02 .inner table th, .cont02 .inner table td{padding: 20px 0; text-align: left;vertical-align: top;}
.cont02 .inner table th{width: 20%}
.cont02 .inner table td{width: 80%}


.cont03{
	width: 100%;
	padding: 0;
	margin: 0;
}

.cont03 .inner{
	width:590px;
	margin: 0 auto;
	padding:50px 80px;
	background:url("../img/bg.png");
	background-size: cover;
	color: #fff;
}

.cont03 .inner h2{
	font-size: 32px;
	text-align: center;
		margin-bottom: 30px;
}

.cont03 .inner p.sub-ttl{
	margin-bottom: 30px;
	text-align: center;
}

.cont03 .inner p.classimg img{
	width:100%;
	margin-bottom: 40px;
}

.cont04{
	width: 100%;
	padding: 0;
	margin: 0;
}

.cont04 .inner{
	width:590px;
	margin: 0 auto;
	padding:50px 80px;
	background:url("../img/bg.png");
	background-size: cover;
	color: #fff;
}

.cont04 .inner h2{
	font-size: 32px;
	text-align: center;
}

.cont04 .inner p.sub-ttl{
	margin-bottom: 30px;
	text-align: center;
}

.cont04 .inner p.classimg img{
	width:100%;
	margin-bottom: 40px;
}


table.classTB{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
}

table.classTB th,table.classTB td{padding: 20px 0; text-align: left; vertical-align: top;}
table.classTB th{width: 30%}
table.classTB td{width: 70%}

iframe {
  width: 100%;
  aspect-ratio: 16/9; //アスペクト比（縦横比）を指定
}


.map{
	width: 100%;
	padding: 0;
	margin: 0;
}

.map .inner{
	width:750px;
	margin: 0 auto;
	padding:0;
}

.gmap {
    position: relative;
    width: 100%;    /* 左右に余白が必要なら値を変更してもOK */
    height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}

.gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;    /* 必要であれば!importantを付けてください */
    height: 100%;    /* 必要であれば!importantを付けてください */
}


.formbox{
	width: 100%;
	padding: 0;
	margin: 0;
}

.formbox .inner{
	width:750px;
	margin: 0 auto;
	padding:100px 0 50px;
}

.formbox .inner h2{
	font-size: 32px;
	text-align: center;
	margin-bottom: 30px;
}

footer{
	width: 100%;
	padding: 0;
	margin: 0;
	font-size: 14px;
	color: #666;
	border-top: 1px solid #ccc;
}

footer .inner{
	width:750px;
	padding:50px 0;
	margin: 0 auto;
	text-align:center;
}

footer .inner a{
	color: #666;
}

footer .inner a:hover{
	text-decoration: underline;
}


footer img{width:160px;}



/******フォーム*******/

table.formTB{
	width:100%;
	text-align:left;
	border-collapse:collapse;
	margin-bottom:30px;
}

table.formTB th{
	width:35%;
	padding:15px 10px;
	background:#f9f9f9;
	border:#cccccc 1px solid;
	text-align:left;
}

table.formTB td{
	padding:15px 10px;
	background:#ffffff;
	border:#cccccc 1px solid;
}

table.formTB td p span{ font-size:12px;}

.privacybox{padding:0; font-size: 12px; margin-bottom: 40px;}
.musttxt{
	background:#e95454;
	padding:5px 5px;
	font-size:10px;
	color:#ffffff;
	margin-right: 5px;
	border-radius: 4px;		/* CSS3草案 */
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;	/* Firefox用 */
}

select {
	font-size: 16px;
  padding: 2px 5px;
}

input {
    vertical-align : middle;
	font-size: 16px;
}

input[type="text"],input[type="email"],input[type="tel"]{
	border: 1px solid #efefef;
	background: #fff;
	width: 90%;
	padding: 8px;
}

input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus{
	background: #ffe6b7;
	border: 1px solid #e95454;
}

textarea {
	width: 80% !important;
	height: 150px !important;
	background: #fff;
	border: 1px solid #efefef;
	text-indent: 0.2em;
	padding:2%;
	font-size: 16px;
}

textarea:focus {
	background: #ffe6b7;
	border: 1px solid #e95454;
}


.btn_form{
	width:90%;
    background:#00913c;
	color: #fff;
	border: 2px solid #00913c;
	display:block;
	padding:15px 0;
	text-align:center;
	margin:0 auto;
	font-size: 16px;
    overflow: hidden;
	-moz-transition-duration:1s;
	-webkit-transition-duration:1s;
	-o-transition-duration:1s;
	-ms-transition-duration:1s;
	border-radius:40px;
	font-weight: bold;
text-indent: inherit;
}

.btn_form:hover{
	color: #00913c;
    background:#fff;
	border: 2px solid #00913c;
}

.thanksbox{
	text-align:center;
	line-height: 2.5;
}
.briefingtxt02{margin-bottom:40px;}

.ex_txt{display:block;font-size: 12px; text-align: center;}

input[type="submit"] {appearance: none;-webkit-appearance: none;}


a.btn02 {
	width: 50%;
	text-align: center;
  color: #fff;
  background: #00913c;
  padding: 10px 40px;
  display: inline-block;
  border-radius: 30px;
margin:0 auto;
	text-decoration: none;
	position: relative;
	display: block;
}

a.btn02::after{
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}


a.btn02:hover {
	opacity: 0.6;
}



.sp-fixed {
	width: 100%;
  background-color:#403026;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  left: 0;
color: #fff;
}


.sp-fixed .inner{
	width: 730px;
	padding: 30px 10px;
	margin:0 auto;
}

.sp-fixed .btn{text-align: center;}
.sp-fixed .btn img{width:70%;}	
.sp-fixed .btn a:hover img{opacity: 70%;}

.ctabox{
	margin-bottom: 20px;
	display: flex;
	 align-items: center;
	justify-content: center;
}

.ctabox-l,.ctabox-r{width:48%; text-align: center;}

.classname{font-size:16px;}
.datetime{font-size:21px;}


.thanksbox{
	width: 100%;
	padding: 0;
	margin: 0;
}

.thanksbox .inner{
	width:750px;
	margin:0 auto;
	padding:152px 0 60px;
}





@media (max-width: 749px) {
header .inner,.main .inner,.cont01 .inner,.cont01-2 .inner,.cont02 .inner,.cont03 .inner,.cont04 .inner,.map .inner,.formbox .inner,footer .inner,.sp-fixed .inner,.thanksbox .inner{ width:auto;}
}


@media (max-width: 749px) {
.cont01 .inner{padding: 50px 15px;}
.cont01-2 .inner{padding: 50px 15px;}
.cont01-2 .inner dl dt span{font-size: 30px;}
.cont01-2 .inner dl dt{font-size: 22px;}
.cont02 .inner{padding: 50px 15px;}
.cont03 .inner{padding: 50px 20px;}
.cont04 .inner{padding: 50px 20px;}
.formbox .inner{padding: 50px 20px;}
footer .inner{padding: 50px 15px;}
.sp-fixed .inner{padding: 15px 10px;}
.thanksbox .inner{padding:152px 15px 60px;}
.cont01 .inner h2,.cont02 .inner h2,.cont03 .inner h2,.cont04 .inner h2,.formbox .inner h2{font-size: 24px;}
}

@media (max-width: 520px) {
.thanksbox .inner{font-size: 14px; text-align: left;}
}

@media (max-width: 500px) {
header {padding: 15px 0;}
.main {padding: 80px 0px 0px;}
header .inner img,footer img{width:130px;}
.cont01-2 .inner dl dt span{font-size: 28px;}
.cont01-2 .inner dl dt{font-size: 20px;}
.cont02 .inner{ font-size: 14px;}
table.classTB{ font-size: 14px;}
table.formTB {border-bottom:1px solid #ccc;font-size: 14px;}
table.formTB th{width: auto;display: block; border-bottom: none;}
table.formTB td{width: auto;display: block; border-bottom: none; padding: 10px;}
footer{font-size: 12px;1}
.sp-fixed .btn img{width:99%;}	
}

@media (max-width: 480px) {
.classname{font-size:14px;}
.datetime{font-size:18px;}
.cont01 .inner h2,.cont02 .inner h2,.cont03 .inner h2,.cont04 .inner h2,.formbox .inner h2{font-size: 22px;}
}

@media (max-width: 410px) {
header .inner img,footer img{width:110px;}
.main {padding: 59px 0px 0px;}
header .inner a.btn {font-size: 14px;}
.cont01-2 .inner dl dt span{font-size: 20px;}
.cont01-2 .inner dl dt{font-size: 18px;}
.cont01-2 .inner dl dd{font-size: 14px;}
.classname{font-size:13px;}
.datetime{font-size:16px;}
}


@media (max-width: 400px) {
.cont02 .inner table th{padding: 20px 0 0 0;}
.cont02 .inner table td{padding: 20px 0; }
.cont02 .inner table th{width: auto;display: block;}
.cont02 .inner table td{width: auto;display: block;}
table.classTB th{padding: 20px 0 0 0;}
table.classTB td{padding: 15px 0; }
table.classTB th{width: auto;display: block;}
table.classTB td{width: auto;display: block;}
}
	
@media (max-width: 370px) {
.cont02 .inner table th{padding: 20px 0 0 0;}
.cont02 .inner table td{padding: 20px 0; }
.cont02 .inner table th{width: auto;display: block;}
.cont02 .inner table td{width: auto;display: block;}
.classname{font-size:12px;}
.datetime{font-size:14px;}
}

@media (max-width: 350px) {
header {padding: 10px 0;}
header .inner img{width:90px;}
header .inner a.btn {font-size: 12px;}
.cont01-2 .inner dl dt span{font-size: 18px;}
.cont01-2 .inner dl dt{font-size: 16px;}
.cont01-2 .inner dl dd{font-size: 14px;}
.classname{font-size:10px;}
.datetime{font-size:12px;}
.cont01 .inner h2,.cont02 .inner h2,.cont03 .inner h2,.cont04 .inner h2,.formbox .inner h2{font-size: 21px;}
}

@media (max-width: 300px) {
header .inner img{width:90px;}
header .inner a.btn {font-size: 12px;padding: 10px 30px 10px 20px;}
header .inner a.btn::after {width: 5px;height: 5px;right: 10px;}
}


.clearfix::after {
   content: "";
   display: block;
   clear: both;
}


.cont02 h3{
	text-align: center;
	font-size: 22px;
	margin-bottom: 15px;
}

.cont02 p{
	text-align: center;
	font-size: 16px;
}

.cont01 .inner div {
    text-align: center;
}

.cont01 .inner ul {
    display: inline-block;
    text-align: left;
    font-weight: 700;
	padding: 25px 0;
	font-size: 24px;
}

.cont01 .inner ul li {
    background: url(../img/icon.png) left center no-repeat;
    background-size: 25px 26px;
    padding-left: 35px;
	margin-bottom: 15px;
}

@media (max-width: 480px) {

.cont02 h3{
	text-align: left;
	font-size: 19px;
}

.cont02 p{
	text-align: left;
	font-size: 14px;
}
	
.cont01 .inner div {
    text-align: left;
}
	
.cont01 .inner ul {font-size: 22px;}
.cont01 .inner ul li {
	margin-bottom: 5px;
}

	
}

@media (max-width: 720px) {

.cont01-txt{text-align:left;}

}

@media (max-width: 440px) {
.cont01 .inner ul {font-size: 20px;}
}

@media (max-width: 405px) {
.cont01 .inner ul {font-size: 18px;}
}