@charset "UTF-8";

#open-chat{
    position:fixed;
    bottom:66px;
    left:5%;
    box-shadow: 0 0.1em 0.3em rgba(0,0,0,0.33);
}

.chat-container {
    position: fixed;
    bottom: 0;
    left: 0%;
    width: 100%;
    height: 100%;
    background-color: white;
    box-shadow: 0 0 1em rgba(0,0,0,0.2);
    border-radius: 0.5rem 0.5rem 0 0;
    z-index: 99999;
    
    /* アニメーションの肝：下に100%ずらして隠す */
    transform: translateY(100%);
    transition: transform 0.3s ease-out, opacity 0.1s ease-out;
    opacity: 0;
    display: flex;
    flex-direction: column;
}

/* 表示状態（クラスがついたら元の位置に戻る） */
.chat-container.active {
    transform: translateY(0);
    opacity: 1;
}

/* iframeをコンテナいっぱいに広げる */
.chat-container iframe {
    flex-grow: 1;
    width: 100%;
    border: none;
}

#chat-container .chat-header {
    padding-left:1em;
}

/* 閉じるボタンのスタイル（任意） */
#close-chat {
    float: right;
    font-size:1em;
    /* font-weight: bold; */
    background: white;
    border:none;
    margin-right: 0.25em;
}

/* タイピング中のカーソル点滅 */
.typing-cursor::after {
    content: "|";
    animation: blink 0.7s infinite;
    margin-left: 2px;
    color: #f97316; /* オレンジ色 */
}

@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(10px); /* 少し下から */
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* アニメーションを適用するクラス */
.fade-in-item {
    opacity: 0; /* 最初は隠しておく */
    animation: fadeInUp 0.5s ease forwards;
}

#message-container {
    max-height: 300px;
    overflow-y: auto;
    /* スクロールバーを隠す設定などはお好みで */
}

.iconBot {
    position: relative;
    background-color: #fff5ef;
    /* 左側にアイコンが並ぶための余白(アイコン幅＋α)を外側に作る */
    margin: 2.4em 0 1.2em 3.0em; 
    padding: 0.72em;
    border-radius: 0 1em 1em 1em;
    min-height: 2.4em; /* アイコンの高さに合わせる */
}

.iconBot::before {
    content: "";
    position: absolute;
    /* ふきだしの左端からさらに左へ配置する（マイナス値） */
    left: -3em; 
    top: -1.2em;
    width: 2.4em;
    height: 2.4em;
    background-image: url('https://wanchanto.info/upload/20240112155445_thumbnail_wanchanto.jpg'); 
    background-size: cover;
    background-position: center;
    border-radius: 50%;
    background-color: #eee; 
    border: 1px solid #ddd;
}

.user-message {
    position: relative;
	/* background-color: #fff5ef; */
    /* 左側にアイコンが並ぶための余白(アイコン幅＋α)を外側に作る */
    margin: 2.4em 3.0em 1.2em 0 ; 
    padding: 0.72em;
	border:#ccc 1px solid;
    border-radius: 1em 0 1em 1em;
    min-height: 2.4em; /* アイコンの高さに合わせる */
}

.user-message::before {
    content: "";
    position: absolute;
    /* ふきだしの左端からさらに左へ配置する（マイナス値） */
    right: -3em; 
    top: -1.2em;
    width: 2.4em;
    height: 2.4em;
    background-image: var(--user-icon, url('https://wanchanto.info/upload/thumbnail.jpg'));
    background-size: cover;
    background-position: center;
    border-radius: 50%;
    background-color: #eee; 
    border: 1px solid #ddd;
}


#results-list .nameRelated {
	height: calc(100vw + 2em);
	margin-bottom:1.5em;
}

#results-list dl.destinationLargeIndex dd.name .areaName{
	font-size: 15px;
	font-weight:normal;
	background-color: rgba(255,255,255,81%);
	border-radius:0.25em;
	text-shadow:none;
	padding:2px 4px;
	vertical-align:inherit;
	color: black;
}

#results-list dl.destinationLargeIndex p.comment {
	color: black;
	padding: 0.24em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.5;
}
#results-list dl.destinationLargeIndex p.comment a{
	color: black;
}
#start-options button {
	width: 15em;
}
