@charset "UTF-8";


#RthCustomizeW {
/*	width: 950px !important;*/
}

#RthCustomizeW {
	color: #1E1E1E;
	margin: 0 auto;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "ＭＳ 明朝", "MS Mincho", "HGS明朝E", serif;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	background: url("../images/bg1.png") center center repeat;
}

#RthCustomizeW img {
	vertical-align: bottom;
	max-width: 100%;
}

#RthCustomizeW .ta_r {
	text-align: right;
}

#RthCustomizeW .ta_c {
	text-align: center;
}

#RthCustomizeW a {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#RthCustomizeW a img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#RthCustomizeW a:active,
#RthCustomizeW a:hover,
#RthCustomizeW a:hover img {
	opacity: 0.5;
}


#RthCustomizeW li {
	list-style: none;
}

#RthCustomizeW img {
	vertical-align: bottom;
	max-width: 100%;
}

#RthCustomizeW a {
	color: unset;
	cursor: pointer;
	text-decoration: none;
}

#RthCustomizeW a {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#RthCustomizeW img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#RthCustomizeW a:active,
#RthCustomizeW a:hover,
input[type=submit]:hover {
	opacity: 0.7;
}

.single-column .travel__tab{
	z-index: 10000;
}

div#htlMainContent #RthCustomizeW h1#pageTitle {
	text-align: center;
	padding-right: 0;
}

#htlMainContent input[type=submit] {
	transition: 0.3s ease-in-out;
	cursor: pointer;
}


.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb10 { padding-bottom: 10px !important; }
.p15 { padding: 0 15px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }

.mb05em { margin-bottom: 0.5em !important; }
.mb1em { margin-bottom: 1em !important; }
.mb2em { margin-bottom: 2em !important; }
.mb3em { margin-bottom: 3em !important; }
.mb4em { margin-bottom: 4em !important; }
.pb05em { padding-bottom: 0.5em !important; }
.mr0 { margin-right: 0 !important; }

li { list-style: none; }

p {
	text-align: justify;
	-ms-text-justify: auto;
	text-justify: auto;
	text-justify: inter-ideograph;
}
h1,h2,h3,h4,h5,h6,strong { font-weight: normal; }
img { vertical-align: bottom; max-width: 100%; }

.noborder { border: none !important; }
.nomargin { margin: 0 0 !important; }

.ta_r { text-align: right; }
.ta_c { text-align: center; }

.cf:before,.cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { zoom:1; }

.enfont { font-family: Montserrat; letter-spacing: 0.2em; font-weight: bold; }
	a {
		color: #1E1E1E;
		text-decoration: none;
	}

.ns_show { display: none; }

.benefits { display: none; }

.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb100 { margin-bottom: 100px !important; }
.mb120 { margin-bottom: 120px !important; }
.pt50 { padding-top: 50px !important; }
.mr20 { margin-right: 20px; }
.ls-1 { letter-spacing: -1px; }
.ls-2 { letter-spacing: -2px; }
.ls-3 { letter-spacing: -3px; }
.ls-4 { letter-spacing: -4px; }
.fs10 { font-size: 10px; }
.fs14 { font-size: 14px; }
.fs15 { font-size: 15px; }
.fs16 { font-size: 16px; }
.fs24 { font-size: 24px; }
.fs26 { font-size: 26px; }

a {
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
a img{
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}

a:active, a:hover, a:hover img { opacity: 0.5; }

.for_sp{display: none !important;}
.for_tab{display: none !important;}
.for_nw{display: none !important;}
.tab .for_pcnotab { display: none !important; }
.tab .for_tab { display: inline !important; }
body { font-size: 16px; line-height: 24px; }
.wrap , #page { position: relative; width: 100%; overflow: hidden; }


/* fnav , header
---------------------------------------------------------------------- */
#fnav { position: fixed; z-index: 1000; background: url("../images/bg1.png") center center repeat;
	top:-120px; }
#fnav.scroll { top:0; }

.cnav { width: 100%; height: 80px; transition:0.3s; }
.cnav h1 a { font-size: 12px; height: 46px; position: relative;
  display: block; width: 177px; text-indent: -10000px; overflow: hidden;
  background: url(../images/logo.png) left bottom no-repeat;
  background-size: contain;}
.cnav h1 a span { position: absolute; top:0; left: 0; width: 385px; }
.cnav nav { width: 900px; }
.cnav nav ul { display: flex; justify-content: flex-end; align-items: center;
  transition: 0.3s; }

.navmain { height: 50px; padding-top: 15px; position: relative; display: flex; justify-content: space-between;
   align-items:center; transition: 0.3s; flex-wrap: wrap; }
.navmain nav ul li { position: relative; }
.navmain nav ul a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
  font-size: 16px;
  position: relative;
  padding: 0 9px;
  position: relative;
}
.navmain nav ul li.btn_rsv a {
  height: 50px;
  background: #4d7954;
  margin-left: 20px;
  width: 160px;
  color: #FFFFFF;
}

header#header { position: absolute; z-index: 1000; height: 205px;
  /*background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0));*/ color:#ffffff;
   top:0; left: 0; }
header#header.cnav h1 a { background: url(../images/logo_white.png) center center no-repeat;
width: 300px; height: 100px; text-align: left; background-position: right;}
header#header.cnav nav { width: auto; margin-left: auto; }
header#header .navmain { width: 100%; margin-left: auto; margin-right: auto; height: 100px; padding: 0 20px; }
header#header .navmain nav ul li { margin-right: 10px; }
header#header .navmain nav ul li:last-child { margin-right: 0; }
header#header .navmain nav ul li:after { background: rgba(244,244,244,1); }
header#header .navmain nav ul a { color: #ffffff; }
header#header .navmain nav ul li:nth-child(1) a ,
header#header .navmain nav ul li:nth-child(2) a { background: url("../images/icon_arrow_try_r_white.svg") center left no-repeat; }
header#header .navmain nav ul li:nth-child(3) a { background: url("../images/icon_arrow_try_r_white.svg") center left no-repeat; }
header#header .navmain nav ul li:nth-child(4) a { background: url("../images/icon_tel_white.svg") center left no-repeat;
  padding-left: 20px; display: inline-block; pointer-events: none; }
header#header.scroll .navmain nav ul a{ color: #1c1c1c; }




/* language_menu
---------------------------------------------------------------------- */
.language_menu { line-height: 40px; position: relative; top: 5px; }
.language_menu>li { position: relative; width: 90px; height: 40px; text-align: center;
  cursor: pointer; }
.language_menu>li a { display: block; width: 100%; height: 30px; color: #ffffff; font-size: 13px;
  position: relative; line-height: 30px; /*text-shadow:2px 2px 10px #000000;*/ border-bottom: 1px solid #FFFFFF; /*text-decoration: underline;*/ position: relative; }
.language_menu>li>a:after { content: ""; display: block; width: 4px; height: 4px;
  background: url("../images/icon_arrow_try_d_white.svg") center center no-repeat;
  position: absolute ; top: 15px; right: 0; }
.language_menu>li:hover a { opacity: 1; }
.language_menu>li ul { left: 0; position: absolute; z-index: 30; }
.language_menu>li ul li { overflow: hidden; height: 0; transition: 0.2s; position: relative; }
.language_menu>li ul li:before { content: ""; width: 90px; height: 1px;
  background: rgba(255,255,255,0.2); position: absolute; top:0; left: 0; }
.language_menu>li:hover > ul > li { overflow: visible; width: 100%; height: 30px; line-height: 30px; }
.language_menu>li ul li a { display: block; position: relative; height: 30px; line-height: 30px;
  text-align: center; width: 90px; }
.language_menu>li:hover ul li a:hover { background: #4d7954; color: #ffffff; }
footer .language_menu>li ul { background: #000000; }


/* rsv (notused)
---------------------------------------------------------------------- */
.notused .rsv { display: flex; /*justify-content: space-between;*/ flex-wrap: wrap; align-items: center; }
.notused .rsv h2 { line-height: 35px; font-size: 18px; margin-right: 20px; }
.notused .rsv form { display: flex; /*width: 780px;*/ justify-content: space-between; }
.notused .rsv .inbox_489ban { display: flex; /*width: 220px;*/ justify-content: space-between; }
.notused .rsv form dl { position: relative; margin-right: 10px; }
.notused .rsv form dl dt { position: absolute; top:0; left: 0; line-height: 35px; font-size: 15px;
  padding-left: 12px; }
.notused .rsv form dl dd input { padding-left: 83px; border:#cccccc 1px solid; /*border-radius: 5px;*/
  line-height: 33px; font-size: 18px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "ＭＳ 明朝", "MS Mincho", "HGS明朝E", serif;
  width: 230px; height: 35px; }
.notused .rsv form dl.date_489ban dd input { background: url(../images/icon_cal.svg) right 15px center no-repeat #ffffff; }
.notused .rsv form dl.date_489ban dd label { /*display: none;*/ }
.notused .rsv form dl.date_489ban dd label input { background: #ffffff; padding: 0; width: 20px;
  height: 20px; }
.notused .rsv form dl dd select { padding-left: 45px; border:#cccccc 1px solid; /*border-radius: 5px;*/
  line-height: 33px; font-size: 18px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "ＭＳ 明朝", "MS Mincho", "HGS明朝E", serif; width: 100px;
  height: 35px; -webkit-appearance: none; background: url(../images/icon_arrow_down.svg) right 10px center no-repeat #ffffff; }
.notused .rsv form dl.room_489ban dd select { padding-left: 60px; width: 110px; }
.notused .rsv form dl dd span { position: absolute; right: 0; top:0; line-height: 35px;
  display: inline-block; padding-right: 20px; }
.notused .rsv form button { line-height: 35px; height: 35px; background: url(../images/icon_arrow.svg) right 12px center no-repeat #aa0a78; color:#ffffff; transition: 0.3s;
  text-align: center; /*border-radius: 5px;*/ padding: 0 25px 0 20px;
  -webkit-appearance: none; cursor: pointer; border:none; }
.notused .rsv form button:hover { background: url(../images/icon_arrow.svg) right 7px center no-repeat #897551; }
.notused .rsv .member li a { display: block; padding-left: 12px; background: url(../images/icon_list.svg) left center no-repeat; line-height: 17px; }



/* rsv_i (notused)
---------------------------------------------------------------------- */
.notused #ui-datepicker-div { z-index: 1000 !important; }
.notused #rsv_i { background: url(../images/bg_cb.jpg) repeat; padding: 40px 0; }
.notused #rsv_i h2 { font-size: 20px; line-height: 22px; }
.notused #rsv_i h2 span { font-size: 14px; display: block; color: #aa0a78;
  font-family: adobe-garamond-pro, serif; }
.notused #rsv_i .rsvwrp { border-left: #d6d6d6 1px solid; padding-left: 30px; }
.notused #rsv_i .rsvwrp .cflex { align-items: flex-end; }
.notused #rsv_i .rsv form { align-items: flex-end; }
.notused #rsv_i .rsv form dl dt { position: static; font-size: 16px; padding-left: 0;
  line-height: 26px; }
.notused #rsv_i .rsv form dl dd input { padding-left: 20px; width: 170px; }
.notused #rsv_i .rsv form dl dd select { padding-left: 15px; width: 80px; }
.notused #rsv_i .rsv form dl.date_489ban dd label input { width: 20px; }
.notused #rsv_i .rsv form dl.room_489ban dd select { padding-left: 15px; width: 80px; }
.notused #rsv_i .rsv form dl dd span { right: 10px; top:26px; }
.notused #rsv_i .rsv ul.notice { margin-top: 15px; }



/* f_rsv
---------------------------------------------------------------------- */
#f_rsv {
margin: 0;
padding: 1px;
position: fixed;
display: none;
z-index: 5099;
padding: 60px;
}
#f_rsv .b_rate { text-align: center; margin-bottom: 20px; }
#f_rsv .b_rate .bo_frame_radius { color: #4d7954; }

.rsv form { position: relative; }
.h650 .rsv form { padding-top: 20px; padding-bottom: 20px; }
#f_rsv h3 { font-size: 18px; text-align: center; margin-bottom: 15px; }
.rsv .hcal { display: block; width: 100%; padding: 0; display: block; }
.rsv .hcal label { font-size: 15px; color: #83174c; text-align: center; display: block; }
#f_rsv .ui-datepicker-inline { display: flex !important; width: 680px !important; margin-left: auto; margin-right: auto; justify-content: space-between; }
#RthCustomizeW .ui-datepicker-calendar,#RthCustomizeW #datepicker { width: 100%; }
#datepicker { margin-bottom: 25px; }
#RthCustomizeW .ui-datepicker-calendar td { font-size: 15px; text-align: center; width: 60px; height: 40px; line-height: 42px; }
#RthCustomizeW .ui-datepicker-calendar td a {  display: block; }
#RthCustomizeW .ui-datepicker-calendar td.ui-state-disabled { color: #a8a8a8; }
#RthCustomizeW .ui-datepicker-calendar th { color: #a8a8a8; padding: 12px; font-size: 15px; text-align: center; }
.ui-state-active { background: url(../images/date_active.svg) center center no-repeat; }
#RthCustomizeW .ui-datepicker-header { width: 100%; position: relative; height: 50px; }
#RthCustomizeW .ui-datepicker-prev,#RthCustomizeW .ui-datepicker-next { position: absolute; width: 50px; height: 50px; border-radius: 50%;
  border: #4d7954 1px solid; text-indent: -10000px; overflow: hidden; cursor: pointer; }
#RthCustomizeW .ui-datepicker-prev { background: url(../images/cal_prev.svg) center center no-repeat ; left: -70px; top: 130px; }
#RthCustomizeW .ui-datepicker-next { background: url(../images/cal_next.svg) center center no-repeat ; right: -70px; top: 130px; }
#RthCustomizeW .ui-datepicker-title { display: flex; flex-direction: row; justify-content:center; color: #1E1E1E;
  line-height: 34px; }
.rsv ul.rsv_ul { width: 680px; margin-left: auto; margin-right: auto; display: flex; justify-content:flex-end; margin-bottom: 20px; }
.rsv ul.rsv_ul li { display: flex; font-size: 14px; width: 22%;
border: #cfcfcf 1px solid; height: 50px; line-height: 50px; font-size: 15px;
  align-items:end; position: relative; }
.rsv ul.rsv_ul li:nth-child(2) , .rsv ul.rsv_ul li:nth-child(3) { margin-left: 6em; }
.rsv ul.rsv_ul li span { position: absolute; left: -3em; }
.rsv ul.rsv_ul li:after { content: ""; background: url(../images/icon_arrow_try_d_green.svg) center center no-repeat;
  right: 10px; position: absolute; width: 10px; height: 50px; top:0; }

.rsv select { border: none; height: 50px; line-height: 50px; font-size: 16px; font-family: "notoserif";
   -webkit-appearance: none; border-radius: 0; background: none; width: 100%; padding-left: 50px;
  position: relative; z-index: 3; cursor: pointer; }
.rsv ul.rsv_ul li label { position: absolute; right: 40px; top:0; line-height: 50px; }
.rsv ul.rsv_ul li p { position: absolute; line-height: 48px; left: 5px; top:0; }
.rsv ul.rsv_ul li:last-child select { padding-left: 44px; }
.rsv input[type="submit"] {
  display: block;
  cursor: pointer;
  transition:0.3s;
  -webkit-appearance: none;
  width: 400px; height: 50px; line-height: 50px; margin-bottom: 20px;
  margin-left: auto; margin-right: auto; border:  1px solid #4d7954;
  background: url("../images/icon_loupe.svg") left 150px center no-repeat #4d7954 ;
  color: #FFFFFF;
}
.rsv input[type="submit"]:hover { opacity: 0.5; }
.member { flex-direction: column; justify-content: center; flex-wrap: wrap; align-items: center;  }
.member a { padding: 0 12px; background: url(../images/icon_arrow_try_r_black.svg) left center no-repeat;
  background-size: 4px auto; line-height: 30px; display: block; margin-left: 12px; }

#f_rsv .ui-datepicker-group.ui-datepicker-group-first {
width: 45%;
}
#f_rsv .ui-datepicker-group.ui-datepicker-group-last {
width: 45%;
margin-left: auto;
}
#f_rsv .ui-datepicker-calendar thead {
display: none;
}
#modal-overlay {
  z-index: 5012;
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 120%;
background-color: rgba(0,0,0,0.8);
}



/* mainnav
---------------------------------------------------------------------- */
.mainnav {
/*	width: 100%;*/
        position: absolute;
        bottom: 0;
        right: 50%;
/*        margin-right: -550px;*/
        margin-right: -450px;
        z-index: 5;
        background: #FFFFFF;
        height: 70px;
/*        width: 1100px;*/
        width: 900px;
}
.mainnav ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 70px;
}
.mainnav ul li {
  height: 100%;
}
.mainnav ul a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
  font-size: 16px;
  position: relative;
  padding: 0 20px;
}
#RthCustomizeW  .mainnav ul li.btn_rsv a {
  background: #4d7954;
  margin-left: 20px;
  width: 160px;
  color: #FFFFFF;
}



/* footer
---------------------------------------------------------------------- */
#footer_hotel {
  position: relative;
  background: url("../images/bg6.png") center center repeat;
  padding: 90px 0;
}
#footer_hotel .mainw {
  position: relative;
  justify-content: center;
}
#footer_hotel .add {
  position: relative;
}
#footer_hotel .add h2 {
  width: 200px;
  height: 124px;
  margin-bottom: 15px;
}
#footer_hotel .add h2 a {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/logo_footer.png") center center no-repeat;
  background-size: contain;
  text-indent: -100000px;
}
#footer_hotel .add p {
  color: #FFFFFF;
  line-height: 30px;
  letter-spacing: 0.8px;
}
#footer_hotel .add p a {
  display: inline-block;
  color: #FFFFFF;
  pointer-events: none;
}
#footer_hotel .sns img {
width: 30px;
max-width: 100%;
display: block;
margin: 0 auto;
}
#footer_hotel .sns {
  position: absolute;
  top: 10px;
  left: 250px;
  width: 70px;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}
#footer_hotel .banner ul {
  justify-content: flex-end;
}
#footer_hotel .banner ul li:first-child {
  margin-right: 20px;
}

#footer_group {
  padding: 55px 20px;
}
#footer_group .groupttl {
  align-items: center;
  margin-bottom: 40px;
}
#footer_group .groupttl h2 {
  width: 159px;
  height: 55px;
  margin-right: 40px;
}
#footer_group .groupttl h2 a {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/logo_takamiya_g.svg") center center no-repeat;
  background-size: contain;
  text-indent: -100000px;
}
#footer_group .groupttl p {
  font-size: 20px;
}
#footer_group .g_list {
  margin-bottom: 25px;
}
#footer_group .g_list h3 {
  font-size: 20px;
  color: #4d7954;
  margin-bottom: 15px;
}
#footer_group .g_list ul { margin-bottom: 25px; }
#footer_group .g_list li {
  margin-bottom: 10px;
}
#footer_group .g_list li a {
  color: #1C1C1C;
  text-decoration: underline;
}
#zaoarea {
  margin-right: 35px;
}
#shonaiarea {
  margin-right: 75px;
}
#okitamaarea {
  margin-right: 120px;
}
#footer_group .g_list .area#ssarea {
	min-width: 180px;
}
#footer_group .g_list .area#shonaiarea {
	min-width: 230px;
	width: 230px;
  margin-right: 10px;
}
#footer_group .g_list .area#okitamaarea {
	min-width: 160px;
	width: 160px;
}
#footer_group .g_list .area#bandaiarea {
	margin-right: 0;
}

footer .copy {
  font-size: 13px;
  color: #757575;
  font-family: "游ゴシック Medium", YuGothic, "游ゴシック体","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Yu Gothic Medium","メイリオ", sans-serif;
}


footer .addnav { align-items: center; }
footer nav {}
footer nav { width: auto; }
footer nav ul li { margin-right: 10px; }
footer nav ul li:last-child { margin-right: 0; }
footer nav ul li:after { background: rgba(244,244,244,1); }
footer nav ul a { color: #ffffff; }
footer nav ul li:nth-child(1) a ,
footer nav ul li:nth-child(2) a { background: url("../images/icon_arrow_try_r_white.svg") center left no-repeat; }
footer nav ul { display: flex; justify-content: flex-end; align-items: center; /*flex-wrap: wrap;*/
  transition: 0.3s; }

#footer_group .g_list .area {
min-width: 245px;
width: 100%;
margin-right: 20px;
}

footer nav ul li { position: relative; }
footer nav ul a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
  font-size: 16px;
  position: relative;
  padding: 0 12px;
  position: relative;
}



/* pagetop
---------------------------------------------------------------------- */
#page-top { position: fixed; bottom: 20px; right: 50%; margin-right: -600px; z-index: 3000; }
#page-top a { text-align: center; display: block; width: 90px; height: 90px;
  border-radius: 50%; border: #D6D6D6 1px solid; padding-top: 33px;
  position: relative; background: url("../images/icon_pagetop.svg") center top 25px no-repeat #ffffff; }
#page-top a:hover { background:url("../images/icon_pagetop_on.svg") center top 20px no-repeat #4d7954; opacity: 1;
border: #4d7954 1px solid; color: #FFFFFF; }
#page-top.stop { position: absolute; bottom: 400px; }



/* common
---------------------------------------------------------------------- */
.mainw, .mainw_pc { width: 1100px; margin: 0 auto; }
.w1200 { width: 1200px; margin: 0 auto; }
.w1100 { width: 1100px; margin: 0 auto; }
.w1000 { width: 1000px; margin: 0 auto; }
.w950 { width: 950px; margin: 0 auto; }
.w900 { width: 900px; margin: 0 auto; }
.w920 { width: 920px; margin: 0 auto; }
.w800 { width: 800px; margin: 0 auto; }
.w700 { width: 700px; margin: 0 auto; }
.anchor { margin-top: -80px; padding-top: 80px; }
.cflex { display: flex; }

p { font-size: 16px; line-height: 28px; }

.img100 { width: 100%; }
.img100 img { width: 100%; }
.shadowbox {background: #FFFFFF; border-radius: 10px; box-shadow: 5px 5px rgba(196,196,196,0.8);
  padding: 70px 50px; }
.green { color: #047563; }
.red { color: #9B2B31; }

ul.bcl { padding: 13px 0; display: flex; }
ul.bcl li { position: relative; padding-right: 20px; font-size: 13px; }
ul.bcl li a { text-decoration: underline; color: #ff6a00; font-size: 13px; }
ul.bcl li:after { content: ">"; color: #ababab; position: absolute; right: 3px; }
ul.bcl li:last-child:after { content: ""; }

#mv { width: 100%; max-width: 100%; position: relative;
  height: 400px; }
#mv:before { content: ""; background: linear-gradient(rgba(0,0,0,.3),rgba(0,0,0,0.0));
  height: 170px; width: 100%; position: absolute; top: 0; left: 0; z-index: 2; }
#mv h2 { width: 640px; height: 400px; text-align: center; z-index: 10000px;
  position: absolute; top:0; left: 50%; margin-left: -320x; z-index: 3; }



/* bo_frame
---------------------------------------------------------------------- */
.bo_frame {
  border: 1px solid #4d7954;
  margin: 0 auto 20px;
  padding: 2rem;
}
.bo_frame_radius {
  border: 1px solid #4d7954;
  border-radius: 4em;
  padding: 0.5em 2em;
  color: #4d7954;
  display: inline-block;
}



/* lead
---------------------------------------------------------------------- */
#lead { padding: 90px 0 95px; position: relative; }
#lead .mainw { position: relative; }
#lead .mainw h3 { font-size: 28px; text-align: center;
  color: #4d7954; margin-bottom: 30px; letter-spacing: 5px; }
#lead .mainw h3 span { display: block; font-size: 19px; letter-spacing: 3px; }
#lead .mainw p { text-align: center; font-size: 16px; line-height: 40px; }

p.lead { font-size: 16px; line-height: 26px; text-align: center; margin: 0 auto 40px; }
p.lead.strong { font-size: 24px; line-height: 40px; color: #4d7954; letter-spacing: 5px; }
a.tb { text-decoration: underline; color: #427464; padding-right: 18px;
  background: url(../images/icon_nw.svg) right center no-repeat; }



/* h(a).ch(b)
---------------------------------------------------------------------- */
h3.ch3 { display: block; font-size: 34px; margin-bottom: 25px; text-align: center; }
h3.ch3 span { text-align: center; font-size: 16px; font-family: 'EB Garamond', serif; display: block; color: #4d7954;}

h3.ch3_2 { display: block; font-size: 34px; margin-bottom: 60px; text-align: center; line-height: 1.4; letter-spacing: 2px;}
h3.ch3_2 span { display: block; text-align: center; font-size: 16px; font-family: 'EB Garamond', serif; color: #4d7954; }
h3.ch3_2 small { font-size: 20px; display: block; }

h3.ch3_3 { margin-bottom: 40px; font-size: 40px; line-height: 1.2; text-align: center; position: relative;
letter-spacing: 2px; color: #4d7954; padding-top: 45px; }
h3.ch3_3 span { display: block; font-size: 17px; text-align: center; }
h3.ch3_3::before{ content:""; display:block; position:absolute; top:0; left:0; right:0; width:45px; height:30px; margin-left:auto; margin-right:auto; background-image:url(../images/icon_pica_brown.png); background-repeat:no-repeat; background-position: center center; background-size:45px 30px; }

h4.ch4 { font-size: 24px; letter-spacing: 1px; line-height: 2; margin-bottom: 35px; position: relative; }
h4.ch4 span { display: block; font-size: 14px; letter-spacing: normal; font-family: 'EB Garamond', serif; color: #4d7954; }
h4.ch4 small { font-size: 15px; }

h4.ch4_2 { font-size: 40px; letter-spacing: 2px; line-height: 0.8; position: relative; color: #FFFFFF; }
h4.ch4_2 span { display: inline-block; font-family: 'Kalam', cursive; position: relative; }
h4.ch4_2 span::after { content: ""; display: block; width: 36px; height: 29px;
background: url("../images/icon_pica_white.svg") center center no-repeat; background-size: contain;
position: absolute; top: -30px; right: -30px;}
h4.ch4_2 span.ja { font-size: 17px; font-family: 'Noto Sans JP', sans-serif; }
h4.ch4_2 span.ja:after { background: none; }



/* cmenu
---------------------------------------------------------------------- */
.cmenu { width: 100%; position: relative; z-index: 40; display: flex; margin-bottom: 90px;
  flex-wrap: wrap; justify-content:center; border-top: #cccccc 1px solid;
  border-bottom: #cccccc 1px solid; }
.cmenu li { position: relative; margin: 0 20px; }
.cmenu li a { position: relative; height: 60px; display: flex; text-align: center;
  line-height: 60px; }
.cmenu li a:after { content: ""; display: inline-block; width: 10px; height: 60px;
  background: url(../images/icon_arrow_down2.svg) center center no-repeat;
  margin-left: 5px; transition: 0.3s; }
.cmenu li a:hover:after { background-position: center 60%; }

.cmenu2 { width: 100%; position: relative; z-index: 40; display: flex; margin-bottom: 90px;
  flex-wrap: wrap; justify-content:center; }
.cmenu2 li { position: relative; margin: 0 20px; width: 250px; margin-bottom: 20px; }
.cmenu2 li a { position: relative; width: 100%; height: 60px; display: flex; flex-direction: column;
						   justify-content: center; border-bottom: 1px solid #818181; padding-left: 1em; padding-right: 1.5em;
						  background: url(../images/icon_arrow_r_green.svg) center right 12px no-repeat; }
.cmenu2 li a:hover { background: url(../images/icon_arrow_r_green.svg) center right 7px no-repeat; }



/* cb...color box
---------------------------------------------------------------------- */
.cb { background: url("../images/bg1.png") center center repeat; }
.cb2 { background: url("../images/bg2.png") center center repeat; }
.cb3 { background: url("../images/bg_mount.jpg") center bottom no-repeat #F4F4F4;
  background-size: contain; }



/* bt...border top
---------------------------------------------------------------------- */
.bt { border-top: #e0e0e0 1px solid; padding-top: 30px; }
.cbd { height: 15px; width: 100%; background:#f2f2f2; }



/* cbtn
---------------------------------------------------------------------- */
.cbtn { font-size: 16px; display: flex; align-items: center; justify-content: center;
  text-align: center; width: 400px; height: 60px; position: relative;
  border: #4d7954 1px solid; color: #FFFFFF;
  background: url(../images/icon_arrow_r_white.svg) right 13px center no-repeat #4d7954; }
#RthCustomizeW .cbtn {color: #FFFFFF;}
.cbtn:hover { opacity: 1; border: #D6D6D6 1px solid; color: #4d7954;
  background: url(../images/icon_arrow_r_green.svg) right 8px center no-repeat #FFFFFF; }
#RthCustomizeW .cbtn:hover {color: #4d7954;}
.cbtn2 {
  font-size: 16px; display: flex; align-items: center; justify-content: center;
  text-align: center; width: 400px; height: 60px; position: relative;
  border: #cccccc 1px solid; color: #1e1e1e;
  background: url(../images/icon_arrow_r_green.svg) right 13px center no-repeat #fff;
}
#RthCustomizeW .cbtn2 {color: #1e1e1e;}
.cbtn2:hover {
  opacity: 1; border: #4d7954 1px solid; color: #fff;
  background: url(../images/icon_arrow_r_white.svg) right 8px center no-repeat #4d7954;
}
#RthCustomizeW .cbtn2:hover {color: #fff;}
.cbtn3 { font-size: 16px; display: flex; align-items: center; justify-content: center;
  text-align: center; width: 400px; height: 60px; position: relative;
  background: url(../images/icon_arrow_r_brown.svg) right 13px center no-repeat #FFFFFF;
  border: #C9C9C9 1px solid; }
.cbtn3:hover { opacity: 1; color: #ffffff;
  background: url(../images/icon_arrow_r_white.svg) right 8px center no-repeat #4D1000; }
#RthCustomizeW .cbtn3:hover {color: #fff;}



/* table ctable
---------------------------------------------------------------------- */
table.ctable { border-collapse:collapse; width: 100%; font-size: 16px; }
table.ctable th { width: 35%; color: #4d7954; text-align: center; border-bottom: #acafac 1px solid; padding: 15px 20px; font-weight: normal; }
table.ctable tr:first-child th { border-top:#acafac 1px solid; }
table.ctable td { width: 65%; text-align: left; vertical-align: middle; padding: 15px 20px; border-bottom: #acafac 1px solid; }
table.ctable tr:first-child td { border-top:#acafac 1px solid; }



table.ctable2 { border-collapse:collapse; width: 100%; }
table.ctable2 th, table.ctable2 td { text-align: center; border-left: #acafac 1px solid; }
table.ctable2 th { color: #4d7954; border-bottom: #acafac 1px solid; padding: 15px 20px; font-weight: normal; }
table.ctable2 tr:first-child th { border-top:#acafac 1px solid; }
table.ctable2 td { vertical-align: middle; padding: 15px 20px; border-bottom: #acafac 1px solid; width: 25%; }
table.ctable2 tr:first-child td { border-top:#acafac 1px solid; }
table.ctable2 th:last-child, table.ctable2 td:last-child { border-right: #acafac 1px solid; }



/* ul , dl
---------------------------------------------------------------------- */
ul.cul { text-align: left; font-size: 16px; line-height: 30px; padding-left: 1em; }
ul.cul li { padding-left: 1em; text-indent: -0.8em; /*list-style: disc;*/ }
ul.cul li:before { content: "●"; color: #AAAAAA; display: inline-block; font-size: 10px;
  padding-right: 0.5em; }
ul.cul li.note:before { content: ""; }

ul.notice { font-size: 15px; line-height: 26px; }
ul.notice li,p.notice { padding-left: 1em; text-indent: -0.8em; }

dl.cdl { text-align: left; font-size: 16px; line-height: 30px; padding-left: 1em; }
dl.cdl dt { font-size: 18px; }
dl.cdl dd { padding-left: 1em; text-indent: -0.8em; /*list-style: disc;*/ }
dl.cdl dd:before { content: "●"; color: #AB00F3; display: inline-block; font-size: 10px;
  padding-right: 0.5em; }



/* note
---------------------------------------------------------------------- */
p.note,ul.note li { font-size: 15px; line-height: 26px; padding-left: 1em; text-indent: -1em; }


/* cdl...common dl
---------------------------------------------------------------------- */
.cborder { border: #DDDDDD 1px solid; padding: 25px 30px; border-radius: 10px; margin-bottom: 60px; }
.cborder h5 { width: 400px; height: 32px; text-align: center; line-height: 28px;
  border-top:#365F38 2px solid; border-left:#365F38 2px solid;
  border-right: #D9DD34 2px solid; border-bottom: #D9DD34 2px solid; color: #005F32;
  font-size: 15px; margin-bottom: 30px; border-radius: 10px; }


/* Anime
---------------------------------------------------------------------- */
.feadAnime {
  position: relative;
}

.feadAnime>* {
  position: absolute;
  top: 0;
  left: 0;
  animation-name: fade;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  z-index: 1;
  opacity: 0;
}

.feadAnime>*:nth-child(1) {
  position: relative;
}

.feadAnime>*:nth-child(2) {
  animation-delay: 4s;
}

.feadAnime>*:nth-child(3) {
  animation-delay: 8s;
}

.feadAnime>*:nth-child(4) {
  animation-delay: 12s;
}

.feadAnime>*:nth-child(5) {
  animation-delay: 16s;
}

.feadAnime>*:nth-child(6) {
  animation-delay: 20s;
}

@keyframes fade {
	0% {
		opacity: 0
	}

	3% {
		opacity: 1
	}

	20% {
		opacity: 1
	}

	23% {
		opacity: 0
	}

	100% {
		opacity: 0
	}
}

@keyframes slideAnime--four {
  0% {
    opacity: 0
  }

  3% {
    opacity: 0
  }

  6% {
    opacity: 1
  }

  29% {
    opacity: 1
  }

  30% {
    opacity: 0
  }

  35% {
    opacity: 0
  }

  100% {
    opacity: 0
  }
}

.autoSlidePhotoList {
  display: flex;
}

.autoSlidePhotoList ul {
  display: flex;
  animation: infinity-scroll-left 42s infinite linear both;
}

.autoSlidePhotoList.autoSlidePhotoList--ten ul {
  display: flex;
  animation: infinity-scroll-left 80s infinite linear both;
}

.autoSlidePhotoList li {
  width: 400px;
  flex-shrink: 0;
}

@keyframes infinity-scroll-left {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.slideAnimeWrap {
  overflow: hidden;
  position: relative;
}

.slideAnime {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  flex-shrink: 0;
  animation: slideAnime 16s infinite linear .5s both;
}

.slideAnime>* {
  text-align: center;
  max-width: 100%;
  flex-shrink: 0;
}

.slideAnime img {
  width: 100% !important;
}

.slideAnime.slideAnime--two {
  animation: slideAnime--two 8s infinite linear .4s both;
}

.slideAnime.slideAnime--Three {
  animation: slideAnime--Three 12s infinite linear .4s both;
}

.slideAnime.slideAnime--five {
  animation: slideAnime--five 20s infinite linear .4s both;
}

.slideAnime.slideAnime--six {
  animation: slideAnime--six 24s infinite linear .4s both;
}

@keyframes slideAnime {

  0%,
  24% {
    transform: translateX(0);
  }

  26%,
  49% {
    transform: translateX(-100%);
  }

  51%,
  74% {
    transform: translateX(-200%);
  }

  76%,
  98% {
    transform: translateX(-300%);
  }

  100% {
    transform: translateX(-400%);
  }
}

@keyframes slideAnime--two {

  0%,
  46% {
    transform: translateX(0);
  }

  50%,
  96% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(-200%);
  }
}

@keyframes slideAnime--Three {

  0%,
  31% {
    transform: translateX(0);
  }

  34%,
  64% {
    transform: translateX(-100%);
  }

  67%,
  97% {
    transform: translateX(-200%);
  }

  100% {
    transform: translateX(-300%);
  }
}

@keyframes slideAnime--five {

  0%,
  19% {
    transform: translateX(0);
  }

  21%,
  39% {
    transform: translateX(-100%);
  }

  41%,
  59% {
    transform: translateX(-200%);
  }

  61%,
  79% {
    transform: translateX(-300%);
  }

  81%,
  98% {
    transform: translateX(-400%);
  }

  100% {
    transform: translateX(-500%);
  }
}

@keyframes slideAnime--six {

  0%,
  14.5% {
    transform: translateX(0);
  }

  16.5%,
  31% {
    transform: translateX(-100%);
  }

  33%,
  47.5% {
    transform: translateX(-200%);
  }

  49.5%,
  64% {
    transform: translateX(-300%);
  }

  66%,
  80.5% {
    transform: translateX(-400%);
  }

  82.5%,
  98% {
    transform: translateX(-500%);
  }

  100% {
    transform: translateX(-600%);
  }
}

.slideDotAnime {
  text-align: center;
  margin-top: 30px;
  position: absolute;
  right: 20px;
  bottom: 20px;
  z-index: 2;
  display: flex;
  align-items: center;
}

.slideDotAnime>* {
  width: 10px;
  height: 10px;
  margin: 0 10px;
  background-color: #caccbe;
  border-radius: 50%;
  display: inline-block;
  animation-name: slideDotAnime;
  animation-duration: 16s;
  animation-iteration-count: infinite;
}

.slideDotAnime>*:nth-child(2) {
  animation-delay: 4s;
}

.slideDotAnime>*:nth-child(3) {
  animation-delay: 8s;
}

.slideDotAnime>*:nth-child(4) {
  animation-delay: 12s;
}

.slideDotAnime>*:nth-child(5) {
  animation-delay: 16s;
}

.slideDotAnime>*:nth-child(6) {
  animation-delay: 20s;
}

@keyframes slideDotAnime {
  0% {
    width: 10px;
    height: 10px;
  }

  5% {
    width: 15px;
    height: 15px;
  }

  25% {
    width: 15px;
    height: 15px;
  }

  30% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}

.slideDotAnime.slideDotAnime--two>* {
  animation-name: slideDotAnime--two;
  animation-duration: 8s;
  animation-iteration-count: infinite;
}

.slideDotAnime.slideDotAnime--Three>* {
  animation-name: slideDotAnime--Three;
  animation-duration: 12s;
  animation-iteration-count: infinite;
}

.slideDotAnime.slideDotAnime--four>* {
  animation-name: slideDotAnime--four;
  animation-duration: 16s;
  animation-iteration-count: infinite;
}

.slideDotAnime.slideDotAnime--five>* {
  animation-name: slideDotAnime--five;
  animation-duration: 20s;
  animation-iteration-count: infinite;
}

.slideDotAnime.slideDotAnime--six>* {
  animation-name: slideDotAnime--six;
  animation-duration: 24s;
  animation-iteration-count: infinite;
}

@keyframes slideDotAnime--two {
  0% {
    width: 10px;
    height: 10px;
  }

  10% {
    width: 15px;
    height: 15px;
  }

  50% {
    width: 15px;
    height: 15px;
  }

  60% {
    width: 10px;
    height: 10px;
  }

  85% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}

@keyframes slideDotAnime--Three {
  0% {
    width: 10px;
    height: 10px;
  }

  3% {
    width: 10px;
    height: 10px;
  }

  5% {
    width: 15px;
    height: 15px;
  }

  35% {
    width: 15px;
    height: 15px;
  }

  40% {
    width: 10px;
    height: 10px;
  }

  85% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}

@keyframes slideDotAnime--four {
  0% {
    width: 10px;
    height: 10px;
  }

  3% {
    width: 10px;
    height: 10px;
  }

  6% {
    width: 15px;
    height: 15px;
  }

  29% {
    width: 15px;
    height: 15px;
  }

  30% {
    width: 10px;
    height: 10px;
  }

  35% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}

@keyframes slideDotAnime--five {
  0% {
    width: 10px;
    height: 10px;
  }

  4% {
    width: 15px;
    height: 15px;
  }

  20% {
    width: 15px;
    height: 15px;
  }

  25% {
    width: 10px;
    height: 10px;
  }

  35% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}

@keyframes slideDotAnime--six {
  0% {
    width: 10px;
    height: 10px;
  }

  1% {
    width: 15px;
    height: 15px;
  }

  16% {
    width: 15px;
    height: 15px;
  }

  20% {
    width: 10px;
    height: 10px;
  }

  100% {
    width: 10px;
    height: 10px;
  }
}