/* reset */
/*body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	box-sizing: border-box;
    font-weight: normal;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}




input, select {
    vertical-align:middle;
}




body{
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
    -webkit-text-size-adjust: 100%;
    line-height: 1.6;
    font-size: 100%;
  /*  color: #212121;*/
    color: #595757;
    background-color: #ffffff;
font-weight: 400;
}



/* 小さい画面用の設定-------------- */
@media (max-width:767px){
body{
font-size:88%;
}
}
/* -------------end------------- */


ol, ul{
    list-style:none;
}
fieldset, img{
     border:0;
}

caption, th{
    text-align: left;
}
address, caption, cite, code, dfn, em, strong, th, var{
    font-style: normal; 
    font-weight: normal;
}

hr{
	display:none;
}

html {
	margin-bottom:1px;
	height:100%;
}

* {
    box-sizing: border-box;
}

/* line style　------------------------------*/
/* -----------------------------------------*/

a img{
	border-style:none;
}

a:hover {
opacity: 0.7;
}

/* link style ------------------------------*/
/* -----------------------------------------*/
a:link {
	color: #212121;
	text-decoration: none;	
}
a:visited {  color: #212121;
	text-decoration: none;	}


a:active {
	color: #ccc;
	text-decoration: none; 
}

.link_line{
	text-decoration: underline;
}

img, video, object {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border: none;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}


a:active, a:focus,input:active, input:focus{outline:0;}

img{
	width: 100%;
	height: auto;
}

iframe {
    vertical-align: bottom;
}

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

    ■ Header■ Keyv

======================================== */
.drawer_menu_point{background-color: #ffffff;
position: sticky;
top: 0;
z-index: 1;
}

/************メインビジュアル************/
.main_wrap {
position: relative;
}

.main_flex{
position: absolute;
top: 22%;
left: 50%;
transform: translateX(-50%);
translateX(-50%);
width: 90%;
text-align: center;
display: flex;
flex-wrap: wrap;
color: #ffffff;
justify-content: center;
flex-flow: column;}



.main_flex_copy{
font-size: 225%;
font-weight: 700;
line-height: 1.2;
margin-bottom: 10px;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6); 
/*text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
*/}

.main_flex_txt{
line-height: 1.2;
margin-bottom: 10px;
font-weight: 500;
font-size: 113%;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6); 

}

.main_flex_btn {
  width: fit-content;
  margin: 0 auto;
  padding: 10px 30px;
  border: 1px solid #ff6f61;
  text-align: center;
  background-color: #ff6f61;
  font-size: 113%;
  font-weight: 500;

}

.main_flex_btn a {
  display: block;
  text-decoration: none;
  color: #ffffff;
  position: relative;
  padding-right: 1.5em;
  transition: color 0.3s ease;
}

/* 矢印アイコン */
.main_flex_btn a::after {
  content: "\f105";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

/* PC用CSS */
@media screen and (min-width: 768px) {
.main_flex{
width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);

}

.main_flex_copy{
font-size: 300%;
}

}
/* -------------end------------- */



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

    ■ common_item

======================================== */
.contents{width: 98%;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
word-wrap: break-word;
overflow-wrap: break-word;}



/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.contents{width: 90%;}
}
/* -------------end------------- */

/*================================================
 * 共通見出し
 ================================================*/

.section_title {
  text-align: center;
  font-size: 188%;
  font-weight: 600;
  position: relative;
  padding-bottom: 10px; /* 下にちょうど10px確保 */
  color: #005b96;
margin-bottom: 10px;}

.section_title_con6 {
  color: #ffffff;
  margin-bottom: 20px;
}

.section_title::after {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 60px;
  height: 10px;
  background: url('data:image/svg+xml;utf8,<svg width="120" height="20" viewBox="0 0 120 20" xmlns="http://www.w3.org/2000/svg"><path d="M0 10 Q 10 0, 20 10 T 40 10 T 60 10 T 80 10 T 100 10 T 120 10" fill="none" stroke="%23004999" stroke-width="2"/></svg>') repeat-x;
  background-size: 60px 10px;
  animation: wave 4s linear infinite;
}

.section_title_con6::after {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 60px;
  height: 10px;
  background: url('data:image/svg+xml;utf8,<svg width="120" height="20" viewBox="0 0 120 20" xmlns="http://www.w3.org/2000/svg"><path d="M0 10 Q 10 0, 20 10 T 40 10 T 60 10 T 80 10 T 100 10 T 120 10" fill="none" stroke="%23ffffff" stroke-width="2"/></svg>') repeat-x;
  background-size: 60px 10px;
  animation: wave 4s linear infinite;
}

@keyframes wave {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -60px;
  }
}


.section_lead{text-align: center;
margin-bottom: 30px;
font-size: 113%;
}

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

    ■ menu

======================================== */
.menu_flex_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}


.menu_flex_box > li {
  width: calc(100% / 3);
  background-color: #f5f7fa;
  height: 100px;

  border-bottom: 1px solid #005b96; /* 下に線 */
  border-right: 1px solid #005b96;  /* 右に線 */
}
  
  .menu_flex_box > li a {
  
  color: #005b96;
  
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction:column;}
  

.menu_flex_box > li:nth-child(3),
.menu_flex_box > li:nth-child(6) {
  border-right: none; /* 3番目と6番目は右側に線を表示しない */
}

.menu_title{font-weight: 700;
font-size: 113%;
margin-bottom: 10px;}


.menu_flex_box > li i{
font-size: 200%;
  
  
}




/* PC用CSS */
@media screen and (min-width: 768px) {
.menu_flex_box > li {
  width: calc(100% / 6);

}

.menu_flex_box > li:nth-child(3){
   border-right: 1px solid #005b96;  /* 右に線 */
}

}
/* -------------end------------- */

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

    ■ con1

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

.con1_outside{
background-color: #b3ddf2;
padding-top: 50px;
padding-bottom: 50px;
}

/* PC用CSS */
@media screen and (min-width: 768px) {
.con1_txt{width: 60%;
margin-left: auto;
margin-right: auto;}
}
/* -------------end------------- */













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

    ■ con2

======================================== */
.con2_outside{
padding-top: 50px;
padding-bottom: 50px;
}

.bay_map_img{
width: 100%;
margin-left: auto;
margin-right: auto;}

/* PC用CSS */
@media screen and (min-width: 768px) {
.bay_map_img{width: 80%;}
}
/* -------------end------------- */

.con2_tour_flex {
  display: flex; /* 横並びにする */
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cccccc;
}


.con2_tour_flex > li:first-child {
    width: 40%;
    position: relative;
}

.con2_num {
  position: absolute;
  top:0.3em;
  left: 5px;
}

.con2_num span {
    color: #005b96; /* お好みで */
    background-color: #ffffff; /* 背景つけるとバッジ風に */
    padding-top: 0.3em;
    padding-right: 0.5em;
    padding-left: 0.5em;
    padding-bottom: 0.3em;
    border-radius: 0em 0em 0.3em 0.3em;
    font-family: 'Oswald', sans-serif; /* 数字をスタイリッシュに */
    font-weight: 600;
}





.con2_tour_flex > li:last-child {
/*    padding-top: 10px;*/
    padding-right: 10px;
    padding-left: 10px;
/*    padding-bottom: 10px;*/ /* テキスト部分にパディング */
    box-sizing: border-box;
    width: 60%;
}


.con2_tour_flex > li:first-child img {
  width: 100%;
  height: auto;
}




.con2_tour_name{font-size: 125%;
font-weight: 700;
margin-bottom: 5px;
line-height: 1.4;
color: #005b96;
}



.con2_tour_txt{
margin-bottom: 10px;
display: -webkit-box;
  -webkit-line-clamp: 3; /* 最大3行まで表示 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;}

.con2_view_more{text-align: right;}

.con2_view_more::after {
content: "\f105"; /* Font Awesome angle-right */
  font-family: "Font Awesome 5 Free";
  font-weight: 900; /* solidアイコン */
  margin-left: 0.5em;
  display: inline-block;
  line-height: 1;
  vertical-align: middle; /* 高さ揃えるポイント */
}



/* PC用CSS */
@media screen and (min-width: 768px) {
.con2_tour_wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.con2_tour_wrap > ul {
  width: 48%;

}
	
	.con2_tour_wrap2 {
  justify-content: center;
}

}
/* -------------end------------- */

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

    ■ con3

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

.con3_outside{
background-color: #b3ddf2;
padding-top: 50px;
padding-bottom: 50px;
}

.access_img{margin-bottom: 20px;
width: 80%;
margin-left: auto;
margin-right: auto;}

/* PC用CSS */
@media screen and (min-width: 768px) {
.access_img{width: 50%;
margin-bottom: 30px;}
}
/* -------------end------------- */

.con3_ul > li {
margin-bottom: 20px;}

.con3_ul > li:last-child {
margin-bottom: 0px;}

.con3_inner_ul {
display: flex;
}


.con3_inner_ul > li:first-child {
background-color: #005b96;
color: #ffffff;
font-size: 125%;
width: 10%;
padding-top: 10px;
padding-bottom: 10px;
display: flex;
justify-content: center;
align-items: center;
font-family: 'Oswald', sans-serif; /* 数字をスタイリッシュに */
    font-weight: 600;
}

.con3_inner_ul > li:last-child {
  width: 90%;
  background-color: rgba(255,255,255,0.80);
  position: relative;
  display: block; /* ← flexをaに移動するためblockに戻す */
}

.con3_inner_ul > li:last-child a {
  display: flex; /* これで中央揃えと矢印の整列ができる */
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px 30px 10px 20px; /* liにあったpaddingをこちらへ */
  text-decoration: none;
  color: inherit;
  position: relative;
}



.con3_inner_ul > li:last-child a::after {
  content: '\f105';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

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

    ■ con4

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

.con4_outside{
background-color: #f8f2eb;
padding-top: 50px;
padding-bottom: 50px;
}

.location_img_flex{display: flex;
justify-content: space-between;
margin-bottom: 20px;
width: 70%;
margin-left: auto;
margin-right: auto;}


.location_img_flex li{width: 23%;}


.location_img_flex li img{border-radius: 50%;}

/* PC用CSS */
@media screen and (min-width: 768px) {
.location_img_flex{width: 50%;
margin-bottom: 30px;}
}
/* -------------end------------- */


.tab_area{
overflow:hidden;
max-width: 1000px;
margin: 0 auto;
display: flex;
justify-content: space-between;
}

.tab_area li{
/*Tabの装飾*/
cursor: pointer;
width: 25%;
border-right: 1px solid #005b96; 
}


.tab_area li:last-child {
  border-right: none; /* 3番目と6番目は右側に線を表示しない */
}


.all_area {
overflow: hidden;
}

.hide{display:none;}

.tab_area li{
	text-align: center;
	background-color: #b3ddf2;
	color: #005b96;
	padding-top: 10px;
	padding-bottom: 10px;}
    
.tab_area li.select{
/*アクティブタブの装飾*/
	background-color: #005b96;
	color: #ffffff;}
    
.content_area{background-color: #ffffff;
    padding: 20px;}
    
/*店舗情報の装飾*/
.con4_box{margin-bottom: 30px;
padding-bottom: 30px;
border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}


/* 最後の要素の下線を消す */
.content_area .con4_box:last-of-type {
margin-bottom: 0px;
padding-bottom: 0px;
  border-bottom: none;
}

.con4_slider{margin-bottom: 10px;}

.con4_name{font-size: 113%;
margin-bottom: 10px;
font-weight: 500;
color: #005b96;}

.con4_txt{margin-bottom: 10px;}

.con4_dl {
	font-size: 88%;
}

.con4_dl dt {
	clear: left;
	float: left;
	width: 8em;
}

.con4_dl dd {
	padding-left: 8em;
	margin-bottom: 3px;
	padding-bottom: 3px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;
}

.con4_dl dd:last-child {
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-bottom-style: none;
}
    
/* PC用CSS */
@media screen and (min-width: 768px) {
.con4_box_wrap{display: flex;
justify-content: space-between;
flex-wrap: wrap;}

.con4_box_wrap > div{width: 100%;}

.con4_box{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.con4_box > div:first-child{
width: 36%;
}

.con4_box > div:last-child{
width: 60%;
}

}
/* -------------end------------- */

/* キャプション
-----------------------------------------------------------*/
.con4_cap_wrap{position: relative;}

.con4_cap{position:absolute;
right: 5px;
bottom: 2px;
font-size: 75%;
text-shadow:
    -1px -1px 0 #fff,
     1px -1px 0 #fff,
    -1px  1px 0 #fff,
     1px  1px 0 #fff;}


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

    ■ con5 Q&A

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

.con5_outside{
background-color: #ffffff;
padding-top: 50px;
padding-bottom: 50px;
}

/* Q&A
---------------------------------------------------------------------------*/
/* Chrome、Safari以外 */
summary {
  display: block;

}

/* Chrome、Safari */
summary::-webkit-details-marker {
  display: none;
}

.qa-case {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    
margin-bottom: 10px;
}

.qa-case summary {
display: flex;
align-items: center;
position: relative;
padding: 1em 2.5em 1em 1.5em;
cursor: pointer;
justify-content: space-between;
background-color: #b3ddf2;
   color: #005b96;

}

.qa-case summary::after {
    position: absolute;
    right: 1em; /* 右端に固定 */
    transform: translateY(-50%) rotate(45deg);
    width: 7px;
    height: 7px;
    border-bottom: 3px solid #005b96;
    border-right: 3px solid #005b96;
    content: '';
    transition: transform .5s;
}

.qa-case[open] summary::after {
    transform: rotate(225deg);
}

.qa-case p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding-top: .3em;
    padding-left: 1.5em;
    padding-bottom: 1.5em;
    transition: transform .5s, opacity .5s;
}

.qa-case[open] p {
    transform: none;
    opacity: 1;
    
}

/* PC用CSS */
@media screen and (min-width: 768px) {
.con5_wrap{width: 80%;
margin-left: auto;
margin-right: auto;}
}
/* -------------end------------- */


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

    ■ SNS

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

.sns_outside{
background-color: #f8f2eb;
padding-top: 30px;
padding-bottom: 30px;
color: #ffffff;
}

.sns_flex_box{display: flex;
justify-content: space-between;
max-width: 50%;
margin-left: auto;
margin-right: auto;
}

.sns_flex_box > li{width: 48%;
border: 1px solid #005b96;
padding: 10px;
text-align: center;
background-color: #005b96;}

.sns_flex_box > li a{color: #ffffff;
display: block;}

/* 共通：ブランドアイコンに対応 */
.sns_flex_box > li a::before {
  font-family: "Font Awesome 6 Brands"; /* ← FreeではなくBrandsです */
  font-weight: normal; /* Free Brandsにはweight 900は不要 */
  display: inline-block;
  margin-right: 8px;
}

/* instagramアイコン */
.sns_flex_box > li:nth-child(1) a::before {
  content: "\f16d"; 
}

/* facebookアイコン */
.sns_flex_box > li:nth-child(2) a::before {
  content: "\f09a"; 
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.sns_flex_box{max-width: 100%;
}



}
/* -------------end------------- */


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

    ■ con6

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

.con6_outside{
background-color: #005b96;
padding-top: 50px;
padding-bottom: 50px;
color: #ffffff;
text-align:center;
}

.con6_c_name{
margin-bottom: 5px;
font-weight: 700;
font-size: 138%;
}

.con6_c_add{
margin-bottom: 20px;
font-size: 88%;
}

.bt_mail {
  width: fit-content;
  margin: 0 auto;
  padding: 10px 30px;
  border: 1px solid #fff;
  text-align: center;
  background-color: #fff;
  transition: background-color 0.3s ease, transform 0.3s ease;
  margin-bottom: 50px;
}

.bt_mail a {
  display: block;
  text-decoration: none;
  color: #005b96;
  position: relative;
  padding-right: 1.5em;
  transition: color 0.3s ease;
}

.bt_mail:hover {
	-webkit-transform: translateY(-5px);
	-ms-transform: translateY(-5px);
	transform: translateY(-5px);
}

/* 矢印アイコン */
.bt_mail a::after {
  content: "\f105";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}


.add{font-size: 75%;
text-align: center;}




/* ====================================================
　pagetop
==================================================== */

.pagetop {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 10px;
  z-index: 1000;
  line-height: 1.0;
}

.pagetop a {
  display: flex;
  flex-direction: column; /* 縦並びに変更 */
  align-items: center;
  text-decoration: none;
  color: #f2e6d8;
  font-size: 16px;
  gap: 10px;
}

.pagetop a:hover {
  color: #f2e6d8;
}

/* 矢印の縦線 */
.arrow-up {
  width: 2px;
  height: 200px;
  background-color: currentColor;
  position: relative;
  transition: transform 0.3s ease;
}

.arrow-up::before {
  content: '';
  position: absolute;
  top: -6px; /* 上に出す（直線の上端から） */
  left: 50%;
  transform: translateX(-50%) rotate(-45deg); /* 中央揃え＋回転 */
  width: 10px;
  height: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
}

/* ホバーで少し動く */
.pagetop a:hover .arrow-up {
  transform: translateY(-4px);
}

/* 縦書きテキスト */
.to-top-text {
  writing-mode: vertical-rl;
  font-weight: bold;
  font-size: 14px;
}

/* Bnr_delivery
-----------------------------------------*/
.Bnr_delivery{
  position: relative;
  margin: 0 auto;
  display: none;
}

.Bnr_delivery .Bnr_delivery__img{
position: fixed;
z-index: 89;
top: 65%;
right: 40px;
}
.Bnr_delivery__img__inner{
	width: 320px;
	box-sizing: border-box;
    background-color: #ffffff;
    padding: 20px;
    border-radius: 10px;
    border: 2px solid #005b96;

}

.Bnr_delivery_title{text-align: center;
margin-bottom: 10px;
font-weight: 700;
    font-size: 119%;
    color: #005b96;
	line-height: 1.4;

}
.Bnr_line .Bnr__img__inner a{
  display: block;
}
.Bnr_delivery .Bnr_delivery__img p.delivery_close{
  position: absolute;
  right: 3px;
  top:3px;
}
.Bnr_delivery .Bnr_delivery__img p.delivery_close a{
  display: block;
  width: 20px;
  height: 25px;
  text-align: center;
}
.Bnr_delivery .Bnr_delivery__img p.delivery_close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr_delivery .Bnr_delivery__img p.delivery_close a i{
  font-size: 20px;
  z-index: 888;
  color: #005b96;
}

.Bnr_delivery_flex{display: flex;
justify-content: space-between;}

.Bnr_delivery_flex li:first-child{width: 62%;
font-size: 88%;
line-height: 1.4;}

.Bnr_delivery_flex li:last-child{width: 36%;}

.bt_delivery{
	text-align: center;
padding: 10px;
font-size: 113%;

background-color: #ff6f61;}

.bt_delivery a{
 display: block;
  text-decoration: none;
  color: #ffffff;
  position: relative;
  padding-right: 1.5em;
  transition: color 0.3s ease;
}

.bt_delivery a::after {
  content: "\f105";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){


.Bnr_delivery .Bnr_delivery__img{
bottom: 20px;
top: auto;
right: 40px;
}
.Bnr_delivery__img__inner{
width: 280px;}
	
.Bnr_delivery_flex li:first-child{width: 100%;
	text-align: center;
}
	
.Bnr_delivery_flex li:first-child > img{width: 70%;
margin-left: auto;
margin-right: auto;
}

.Bnr_delivery_flex li:last-child{display: none;}

}
/* -------------end------------- */



