@charset "UTF-8";

body {
  margin: 0;
  padding: 0;
}

/*----------------------------------

ヘッダー
 
---------------------------------- */

.scroll-area {
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-scroll-behavior: smooth;
  scroll-behavior: smooth;
  -webkit-scroll-snap-type: mandatory;
  scroll-snap-type: mandatory;
  -webkit-scroll-snap-points-y: repeat(100%);
  scroll-snap-points-y: repeat(100%);
}


.box {
  width: 100%;
  height: 100vh;
  font-size: 100px;
  display: flex;
  align-items: center; /* 縦方向中央揃え */
  justify-content: top; /* 横方向中央揃え */
  flex-direction: column;
  padding-top: 4vh;
}
.box__bg_black {
  background-color: #333;
}
.box__bg_gray {
  background-color: #fff;
	font-size: 14px;
	
}
.box__bg_gray02 {
  background-color: #f4f4f4;
	font-size: 14px;
	
}
.box__bg_photo {
  background-image: url(../img/header/bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.header_logo {
	color: #000;
	top:0;
	left: 15px;
	margin-top: 20px;
	text-align: left;
	position: absolute;
}

.license {
	margin: 0;
}

.header_cta {
	position: absolute;
    top:20px;
	right: 20px;
}


.header_contact {
	position: relative;
	display: inline-block;
	padding: 5px 10px;
	background-color: #fb4646;
	border: 2px solid #fb4646;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	width:220px;
	font-size:18px;
	border-radius:40px;
	font-weight: bold;
	line-height: 120%;
	
}
.header_contact::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.header_contact:link {
	color: #fff;
}
.header_contact:visited {
	color: #fff;
}
.header_contact:hover {
	background-color: #fff;
	color: #fb4646;
	text-decoration:none;
}
.header_contact:hover::after {
	border-left-color: #fb4646;
}

.header_tel {
	position: relative;
	display: inline-block;
	color: #fff;
	text-align: center;
	text-decoration: none;
	width:220px;
	font-size:30px;
	line-height: 90%;
	padding: 0px 0px;
	background-image: url(../img/header/tel.png);
	background-repeat: no-repeat;
	background-size: 12%;
	background-position: left 31px;
	padding-left: 35px;
	top:5px;
	
	
}

.header_tel:link {
	color: #fff;
}
.header_tel:visited {
	color: #fff;
}

.ent_logo  {
text-align: center;

max-width: 1460px;
margin: 80px auto 50px auto;

	
}
.ent_logo img {
		width: 100%;
	margin-top: 0px;
	
}


.box02 {
	padding: 60px 0px;
	width: 1000px;
	margin: 0px auto;
}



.box02 h2 {
	font-size: 36px;
	line-height: 140%;
	text-align: center;
	background-image: url(../img/common/title_pin.png);
	background-repeat: no-repeat;
	background-position: center top;
	padding-top: 120px;
	margin-top: -90px;
	margin-bottom: 40px;
}


.faq_q {
	background-image: url("../img/common/faq_q.png");
	background-repeat: no-repeat;
	padding-left: 50px;
	margin-bottom: 15px;
	padding-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-color: #c5d2df;
	border-bottom-style: solid;
	font-weight: bold;
	color: #1b1b1b;
	background-position: 10px 8px;
	margin-top: 0px;
	padding-top: 12px;
	background-color: #e8f0f7;
	font-size: 20px;
}

.faq_a {
	background-image: url("../img/common/faq_a.png");
	background-repeat: no-repeat;
	padding-left: 50px;
	margin-bottom: 30px;
	background-position: 10px top;
	font-size: 18px;

}


.footer_cta {
background-image: url(../img/header/bg.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}


.footer_contact {
	position: relative;
	display: inline-block;
	padding: 25px 10px;
	background-color: #fb4646;
	border: 2px solid #fb4646;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	width:600px;
	font-size:22px;
	border-radius:40px;
	font-weight: bold;
	line-height: 120%;
	
}
.footer_contact::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.footer_contact:link {
	color: #fff;
}
.footer_contact:visited {
	color: #fff;
}
.footer_contact:hover {
	background-color: #fff;
	color: #fb4646;
	text-decoration:none;
}
.footer_contact:hover::after {
	border-left-color: #fb4646;
}


.copy {
	background: #313131;
	color:#fff;
	padding: 20px;
	text-align: center;
}

/*----------------------------------

マーカーアニメーション
 
---------------------------------- */

.marker-animation.active{
    background-position: -100% .5em;
}
 
.marker-animation {
    background-image: -webkit-linear-gradient(left, transparent 50%, rgb(255,250,0) 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,250,0) 50%);
    background-image: -ms-linear-gradient(left, transparent 50%, rgb(255,250,0) 50%);
    background-image: -o-linear-gradient(left, transparent 50%, rgb(255,250,0) 50%);
    background-image: linear-gradient(left, transparent 50%, rgb(255,250,153) 50%);
    background-repeat: repeat-x;
    background-size: 200% .8em;
    background-position: 0 .5em;
    transition: all 0.7s ease;
    font-weight: bold;
}


.page_head {
	
	background-image: url(../img/header/bg.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
	position: relative;
	height: 100px;
	margin-bottom: 100px;
	
}








html body [data-ca3_iconfont="ETmodules"]::before {
    font-family: "ETmodules";
}
[data-ca3_icon]::before {
    font-weight: normal;
    content: attr(data-ca3_icon);
}

.ca3-scroll-down-arrow {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2hldnJvbl90aGluX2Rvd24iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiBmaWxsPSJ3aGl0ZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTE3LjQxOCw2LjEwOWMwLjI3Mi0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwYzAuMjcsMC4yNjgsMC4yNzEsMC43MDEsMCwwLjk2OWwtNy45MDgsNy44M2MtMC4yNywwLjI2OC0wLjcwNywwLjI2OC0wLjk3OSwwbC03LjkwOC03LjgzYy0wLjI3LTAuMjY4LTAuMjctMC43MDEsMC0wLjk2OWMwLjI3MS0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwTDEwLDEzLjI1TDE3LjQxOCw2LjEwOXoiLz48L3N2Zz4=);
    background-size: contain;
    background-repeat: no-repeat;
}

.ca3-scroll-down-link {
  cursor:pointer;
    height: 60px;
    width: 80px;
    margin: 0px 0 0 -30px;
    line-height: 60px;
    position: absolute;
    left: 50%;
    bottom: 40px;
    color: #FFF;
    text-align: center;
    font-size: 70px;
    z-index: 100;
    text-decoration: none;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);

    -webkit-animation: ca3_fade_move_down 2s ease-in-out infinite;
    -moz-animation:    ca3_fade_move_down 2s ease-in-out infinite;
    animation:         ca3_fade_move_down 2s ease-in-out infinite;
}


/*animated scroll arrow animation*/
@-webkit-keyframes ca3_fade_move_down {
  0%   { -webkit-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -webkit-transform:translate(0,20px); opacity: 0; }
}
@-moz-keyframes ca3_fade_move_down {
  0%   { -moz-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -moz-transform:translate(0,20px); opacity: 0; }
}
@keyframes ca3_fade_move_down {
  0%   { transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { transform:translate(0,20px); opacity: 0; }
}




/* ==========================================


【メールフォーム】


========================================== */

input.input-name {
border:0;
padding:8px;
font-size:18px;
font-family:Arial, sans-serif;
border:solid 1px #ccc;
margin:0 0 20px;
width:100px;
border-radius: 4px;
margin-left:5px;
}

input.input-text {
border:0;
padding:8px;
font-size:18px;
font-family:Arial, sans-serif;
border:solid 1px #ccc;
margin:0 0 20px;
width:80%;
border-radius: 4px;
margin-left:5px;
}

input.input-tel {
border:0;
padding:8px;
font-size:18px;
font-family:Arial, sans-serif;
border:solid 1px #ccc;
margin:0 0 20px;
width:100px;
border-radius: 4px;
margin-left:5px;
}
textarea.input-text {
border:0;
padding:8px;
font-size:18px;
font-family:Arial, sans-serif;
border:solid 1px #ccc;
margin:0 0 20px;
width:80%;
border-radius: 4px;
margin-left:5px;
}
.submit {
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #668ad8;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 4px #627295;
  border-radius: 3px;
  font-size:18px;
}
.submit:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);/*影を小さく*/
  border-bottom: none;
}



.text_err_come,
.privacy {
font-size:14px;
}


.req {
	color: #ff0000;
}

table.contact {
	width: 100%;
	margin: 0 auto;
	border-collapse: collapse;
	border-spacing: 0;
}

table.contact th {
	width: 25%;
	background: #eeeeee;
	border: solid 1px #cccccc;
	padding: 15px;
	text-align: left;
}

table.contact td {
	border: solid 1px #cccccc;
	padding: 15px;
	text-align: left;
}

table.contact .submit {
	text-align: center;
}

.privacy {
	height: 150px;
	overflow: scroll;
	padding: 10px;
	border: solid 1px #cccccc;
}

#gaiyou {
	background: #f8f8f7;
	border: 1px solid #E3E3E3;
	border-top: none;
	width: 100%;
	font-size: 18px;
	line-height: 180%;
	text-shadow: 0px 1px 0px #FFFFFF;
	margin-bottom: 20px;	
}

dl#gaiyou dl,dl#gaiyou dt,dl#gaiyou dd {
	margin: 0;
	padding: 0;
}

dl#gaiyou dt,dl#gaiyou dd {
	padding: 15px;
}

dl#gaiyou dt {
	border-top: 1px solid #E3E3E3;
	clear: left;
	float: left;
	width: 30%;
	font-weight: bold;
}

dl#gaiyou dd {
	background: #fff;
	border-left: 1px solid #E3E3E3;
	border-top: 1px solid #E3E3E3;
	margin-left:32%;
	
}

.head_line {
	height: 100px;
	display: block;
}