@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: 1030px;
  font-size: 110%;
  display: flex;
  align-items: center; /* 縦方向中央揃え */
  justify-content: top; /* 横方向中央揃え */
  flex-direction: column;
  padding-top: 4vh;
}

.box__bg_black {
  background-color: #f5eed7;
}

.box__bg_gray {
  background-color: #fdf7ef;
	font-size: 14px;
	
}

.box__bg_gray02 {
  background-color: #f5eed7;
	font-size: 14px;
	
}

.box__bg_photo {
  background-image: url(../img/header/bg.jpg);
  max-width: 2000px;
  height: 738px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0;
  padding: 0;
}

.flex {
	display: flex;
	flex-wrap: wrap;
	margin: 30px auto 50px;
	max-width: 1000px;
	align-items: center;
}

.item {
  align-items: center; /* 縦方向中央揃え */
}

.between {
	justify-content: space-between;
}

.around {
	justify-content: space-around;
}

.bg_gray {
	max-width: 1000px;
	background: #F7F6F6;
	padding: 40px 25px;
}

.bg_gray p {
	font-size: 200%;
	text-align: center;
}

.bg_gray_text {
	background: #ecf0f1;
	padding: 1% 3%;
}

.box_shadow {
	max-width: 1000px;
    border-radius: 10px;        /* CSS3草案 */  
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 10px;   /* Firefox用 */
	box-shadow: 0px 3px 10px rgba(0,0,0,0.4);
	background: #fff;
	padding: 6% 4%;
	margin: 10% auto 7%;
}

.box_shadow img {
   max-width: 900px;
   margin: 0 auto;
}

.marker_yellow {
	background: linear-gradient(transparent 30%, #FDF002 20%);
	padding-left: 5px;
}

.red {
	color: #ff0000;
}

h1 {
	color: #462b0f;
	font-size: 240%;
	line-height: 1.4em;
	text-align: center;
	position: absolute;
	top: 29%;
	text-align: center;
	letter-spacing: 5px;
}

p.head_sub {
	color: #462b0f;
	font-size: 190%;
	font-weight: bold;
	line-height: 1.4em;
	text-align: center;
	position: absolute;
	bottom: 28%;
	text-align: center;
	letter-spacing: 2px;
	text-shadow: 3px 3px 0 #FFF, -3px -3px 0 #FFF,
				 -3px 3px 0 #FFF, 3px -3px 0 #FFF,
				 0 3px 0 #FFF,  0 -3px 0 #FFF,
				 -3px 0 0 #FFF, 3px 0 0 #FFF;
}

p {
	padding-top: 4%;
}


.header_tel {
  display: block;
  width: 25%;
  position: absolute;
  top: 40px;
  right: 28%;
}

.header_contact {
  display: block;
  width: 15%;
  position: absolute;
  top: 50px;
  right: 10%;
  padding: 10px 15px;
  border: 1px solid #462B0F;
  border-radius: 32px;
  background-color: #462B0F;
  color: #fff;
  font-size: 120%;
  text-align: center;
  line-height: 1.4em;
}

.header_contact a {
	color: #fff;
}

.header_contact:hover {
	background-color: rgba(70,43,15,0.7);
}

.ent_logo  {
text-align: center;
max-width: 1516px;
margin: 160px auto 0 auto;
}

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

.box01 {
	padding: 0 0 60px;
	width: 100%;
	margin: 0 auto;
}

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

.cont_01_catch {
	background: #69bdfe;
	color: #fff;
	font-size: 140%;
	line-height: 1.4em;
	text-align: center;
	padding: 0 0 2%;
	margin: 0 auto;
}

.cont_01 {
	width: 1000px;
	margin: 3% auto 0;
}

.cont_01_text {
	width: 70%;
}

.cont_01_img {
	width: 26%;
}

.cont_02 {
	width: 1000px;
	margin: 3% auto 0;
}

.cont_02_bg {
	width: 900px;
	height: auto;
	background: url(../img/common/cont_02_bg.jpg), 0, 0, repeat;
	margin: 25px auto 0;
	padding: 5% 0 2%;
}

.cont_02_textarea {
	width: 810px;
	margin: 0 auto 70px;
}

.cont_02_catch {
	font-size: 180%;
	font-weight: bold;
	line-height: 1.4em;
	margin: 0 auto;
}

.cont_03 {
	width: 1000px;
	margin: 8% auto 0;
}

.cont_03_catch {
	width: 836px;
	margin: 0 auto;
}

.cont_03_rankarea {
	max-width: 1000px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 20px auto 30px;
}

.rank_box {
	width: 48%;
	margin: 30px auto 10px;
}

.rank_inner {
	width: 100%;
	height: 131px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 25px;
	position: relative;
}

.rank_icon {
	width: 22%;
	position: absolute;
	left: 0;
	bottom: 0;
}

.rank_name {
	width: 76%;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 170%;
	font-weight: bold;
}

.rank_name02 {
	width: 76%;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 150%;
}

.rank_name p {
	padding-top: 50px;
	line-height: 1.3em;
}

.rank_name02 p {
	padding-top: 50px;
	line-height: 1.3em;
}

.rank_address_box {
	width: 100%;
	height: 40px;
	margin: 0 0 30px;
	clear: both;
}

.rank_address {
	width: 85%;
	float: right;
}

.rank_address .rank_address_icon {
	font-size: 280%;
	color: #EB5D55;
	float: left;
	padding-right: 10px;
}

.rank_address p {
	font-size: 110%;
	line-height: 1.4em;
	margin: 0;
	padding: 0;
}

.rank_kuchikomi_box {
	width: 94%;
	border: 2px dotted #999;
	padding: 2% 3%;
}

.rank_kuchikomi_image {
	text-align: right;
}

.rank_contact {
	display: inline-block;
	padding: 15px 0;
	background-color: #fb4646;
	border: 2px solid #fb4646;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	width: 90%;
	font-size: 140%;
	border-radius: 40px;
	font-weight: bold;
	line-height: 120%;
	margin: 10% 0 3%;
}
.rank_contact:link {
	color: #fff;
}
.rank_contact:visited {
	color: #fff;
}
.rank_contact:hover {
	background-color: #fff;
	color: #fb4646;
	text-decoration:none;
}
.rank_contact:hover::after {
	border-left-color: #fb4646;
}

.sougo_link_txt {
	width: 70%;
	margin: 0 auto;
}

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

.copy .link_txt {
	color: #fff;
	font-weight: normal;
}

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

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

.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;
}



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: 0 0 0 -30px;
    line-height: 60px;
    position: absolute;
    left: 50%;
    bottom: 40%;
    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; }
}

.rank_kuchikomi_inner {
	height: 500px;
	overflow: scroll;
}

.rank_kuchikomi_inner .list {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px dashed #cccccc;
}

.rank_kuchikomi_inner .name {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	margin: 0 10px 10px 0;
}

.rank_kuchikomi_inner .rate {
	display: inline-block;
	color: #ff8a00;
}
