@charset "UTF-8";

*{
    margin: 0;
    padding: 0;
}

/* -------全体への指示------------ */
html {
    scroll-behavior: smooth;
     /* scroll-behavior: smoothはページ内リンクで移動するときの
    スクロールを滑らかにしてくれる。 */
}
section {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
ul li a {
    text-decoration: none;
}
h2 { 
    font-size: 3vw;
    margin-top: 3vw;
    margin-bottom: 2vw;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
}
.line {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.line img {
    width: 100%;
}
/* ---------ヘッダー部分--------------------- */
header {
    display: flex;
    width: 100%;
}
.header-box {
    margin-top: 1vw;
    width: 40%;
    height: 10vh;
    margin-left: 3%;
    margin-right: auto;
    z-index: 1;
}
.header-box img {
    display: block;
    width: 100%;
    background: #f9faf0;
    background: linear-gradient(90deg,rgba(249, 250, 240, 0) 0%, rgba(255, 246, 150, 1) 0%, rgba(247, 247, 35, 0.83) 0%, rgba(247, 247, 45, 0.64) 0%, rgba(247, 247, 120, 0.75) 40%, rgba(247, 247, 129, 0.25) 44%, rgba(247, 247, 236, 1) 96%, rgba(247, 247, 245, 1) 100%);
}
h1 {
    width: 100%;
    text-align: center;
    font-size: 1.5vw;
}
nav {
    width: 100%;
    height: 5vh;
    margin-top: 1vw;
    z-index: 1;
}
nav ul {
    display: flex;
    width: 80%;
    margin-left: auto;
    margin-right: 10%;
}
nav ul li {
    width: calc(100%/10);
    padding-top: 1vw;
    padding-bottom: 1vw;
    list-style-type: none;
    border-left: 1px solid #909090;
    text-decoration: none;
    text-align: center;
    background-color: #fef263;
}
nav ul li:hover {
    background-color: #a0d8ef;;
    color: blue;
    transition: 1s;
}
nav ul li:nth-of-type(10) {
    border-right: 1px solid #909090;
}
.nav-ulbox {
    width: 100%;
}
.nav-ulbox a {
    display: block;
    width: 100%;
    text-decoration: none;
    color: #202020;
    transition: 1s;
}
.nav-ulbox a:hover {
    color: orangered;
    transition: 1s;
}
.nav-ulbox a img {
    display: block;
    width: 30%;
    margin-left: auto;
    margin-right: auto;
}
.nav-ulbox a p {
    font-size: 0.8vw;  
}

/* ----------トップ場面のスライドショー-------- */
/* スライドする要素 */
.slider-container {
    position: relative; /* 親要素を基準に絶対配置する */
    width: 100%;        /* コンテナ幅を100%に */
    height: 40vw;
    overflow: hidden;   /* はみ出す部分は非表示 */
}

.content {
    position: absolute; /* 重ねて配置 */
    inset: 0;           /* 親要素内にフルサイズ配置 */
    opacity: 0;         /* 初期は非表示 */
    background-size: cover; /* 画像をコンテナ全体に拡大 */
    animation: fadeAnime 12s linear infinite; /* 12秒でループ */
}

/* スライドの表示/非表示タイミング */
@keyframes fadeAnime {
  0%, 40%, 100% {
    opacity: 0; /* 非表示 */
  }
  15%, 25% {
    opacity: 1; /* 表示 */
  }
}
/* ---------スライドショー画像------------------ */
.content:nth-child(1) {
    background-image: url(../images/root_1.jpg);
    animation-delay: 0s;
}
.content:nth-child(2) {
    background-image: url(../images/root_2.jpg);
    animation-delay: 3s;
}
.content:nth-child(3) {
    background-image: url(../images/root_3.jpg);
    animation-delay: 6s;
}
.content:nth-child(4) {
    background-image: url(../images/root_4.jpg);
    animation-delay: 9s;
}
.content:nth-child(5) {
    background-image: url(../images/root_5.jpg);
    animation-delay: 9s;
}
.content:nth-child(6) {
    background-image: url(../images/root_6.jpg);
    animation-delay: 9s;
}
.content:nth-child(7) {
    background-image: url(../images/root_7.jpg);
    animation-delay: 9s;
}
.content:nth-child(8) {
    background-image: url(../images/root_8.jpg);
    animation-delay: 9s;
}
.content:nth-child(9) {
    background-image: url(../images/root_9.jpg);
    animation-delay: 9s;
}
.content:nth-child(10) {
    background-image: url(../images/root_10.jpg);
    animation-delay: 9s;
}
.content:nth-child(11) {
    background-image: url(../images/root_11.jpg);
    animation-delay: 9s;
}
.content:nth-child(12) {
    background-image: url(../images/root_12.jpg);
    animation-delay: 9s;
}
.content:nth-child(13) {
    background-image: url(../images/root_13.jpg);
    animation-delay: 9s;
}
.content:nth-child(14) {
    background-image: url(../images/root_14.jpg);
    animation-delay: 9s;
}
.content:nth-child(15) {
    background-image: url(../images/root_15.jpg);
    animation-delay: 9s;
}

/* ---------スライドショー画像ここまで----------- */
.content-Text-Box {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 1.7;
}

.content-Text {
    -webkit-text-orientation: upright;
    text-orientation: upright;
    position: absolute;
    top: 12vw;
    left: 70vw;
    font-family: "ten-mincho-text", serif;
    font-weight: 600;
    font-style: normal;
    font-size: 2.3vw;
    color: #303030;
    text-shadow: 0.1vw 0.1vw 0 #FFF, -0.1vw -0.1vw 0 #FFF,
                -0.1vw 0.1vw 0 #FFF, 0.1vw -0.1vw 0 #FFF,
                0px 0.1vw 0 #FFF,  0-0.1vw 0 #FFF,
                -0.1vw 0 0 #FFF, 0.1vw 0 0 #FFF;
}

.Text-row {
    position: absolute;
    top: 39vw;
    left: 8vw;
    line-height: 1.7;
    font-family: "ten-mincho-text", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.7vw;
    color: #303030;
    text-shadow: 0.1vw 0.1vw 0 #FFF, -0.1vw -0.1vw 0 #FFF,
                -0.1vw 0.1vw 0 #FFF, 0.1vw -0.1vw 0 #FFF,
                0px 0.1vw 0 #FFF,  0-0.1vw 0 #FFF,
                -0.1vw 0 0 #FFF, 0.1vw 0 0 #FFF;    
}
/* ---------スライドショーここまで-------------- */

/* ---------- 戻るボタン -------------- */
.top-button {
    display: flex;
    position: relative;
    position: fixed;
    width: 5%;
    z-index: 2;
}
.top-button a {
    text-decoration: none;
}
.top-button img {
    display: block;
    position: absolute;
  
    width: 100%;
    top: -9vw;
    left: 92vw;
    transform: ccalc(1,1);
    transition: 1s;
}
.top-button img:hover {
    transform: scale(1.2,1.2);
    transition: 1s;
}
/* ----------------------------- */


/* -----セクション⓵------------------------ */
section:nth-of-type(1) {
    display: flex;
    width: 80%;
    height: 90vh;
    margin-left: auto;
    margin-right: auto;
    padding-top: 5vw;
    background-image: url(../images/ill.svg);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: 100% 100%;
}
section:nth-of-type(1) p {
    width: 42%;
    height: 40vh;
    margin-left: 15%;
    margin-right: 13%;
    color: #762f07;
    font-size: 1.5vw;
    line-height: 2;
    white-space: pre-wrap;
    
}
section:nth-of-type(1) h2 {
    width: 20%;
    margin-left: auto;
    margin-right: auto;
   
}
section:nth-of-type(1) img {
    display: block;
    width: 100%;
}

/* -----セクション➁------------------------ */
/* -----メモの一文 --------------------------*/
.memo {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2vw;
}
.memo p {
    font-size: 1.5vw;
    color: darkcyan;
}

/* ----------------------------- */
section:nth-of-type(2) {
    width: 80%;
    height: 160vh;
    margin-left: auto;
    margin-right: auto;
}
.photo-child {
    width: 20%;
    height: 18vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1vw;
    margin-bottom: 1vw;
    border: 1px solid#909090;
    font-size: 0.8vw;
    overflow: hidden;
    box-shadow: 3px 3px 10px 3px #59b9c6;
    /* -------透明ホバーかける--------- */
    opacity: 1; /* 通常時の不透明度 */
    transition: opacity 0.3s ease;
     /* 0.3秒でフェードイン・アウト */
}
.photo-child:hover {
     opacity: 0.7;
      /* ホバー時の不透明度 */
}
.photo-child a{
    text-decoration: none;
}
.photo-child img {
    display: block;
    width: 100%;
    transition: 1s;
}
.photo-child img:hover {
    transform: scale(1.1,1.1);
    transition: 1s;
}

.photo-child a p:nth-of-type(1) {
    margin-top: 0.5vw;
    margin-bottom: 0.5vw;
    font-size: 1.1vw;
    text-align: center;
    color: #762f07;
    
}
.photo-child a p:nth-of-type(2) {
    margin-left: 1em;
    white-space: pre-wrap;
}

/* -------写真-photo-a---------------------- */
.photo-a {
    display: flex;
}
/* -------写真-photo-b---------------------- */
.photo-b {
    display: flex;
}
/* -------写真-photo-c---------------------- */
.photo-c {
    display: flex;
}
/* -------写真-photo-d---------------------- */
.photo-d {
    display: flex;
}
/* -------写真-photo-e---------------------- */
.photo-e {
    display: flex;
}
/* -------写真-photo-f---------------------- */
.photo-f {
    display: flex;
}
/* -------写真-photo-g---------------------- */
.photo-g {
    display: flex;
}
/* -------希望条件チェック------------------ */

.tab-content:nth-of-type(5) {
   width: 90%; 
   height: 50vh;
}
.tab-content:nth-of-type(5) p span {
    font-size: 1.2vw;
    font-weight: 500;
    border-bottom: 1px solid #909090;
} 
.tab-content:nth-of-type(5) p:nth-of-type(2) {
    width: 90%;
}
.tab-content:nth-of-type(5) form {
    width: 90%;
    height: 40vh;
}
/* --------旅のプラン---------------- ------ */
.plan-1 {
    display: flex;
    border-top: 1px solid #909090;
}
.plan-1 p {
    width: 20%;
    margin-left: 3%;
    margin-right: 1%;
    font-size: 1.0vw;
}
.plan-2 p {
    font-size: 1.0vw;
}
.plan-3 p {
    font-size: 1.0vw;  
}
.plan-4 p {
    font-size: 1.0vw; 
}
/* ------------------------------------ */
.plan-box {
    display: flex;
}
/* --------エリア----------------------- */
.area {
    width: 10%;
    margin-top: 1vw;
    margin-left: 3%;
}
/* --------季節----------------------- */
.season{
     width: 10%;
     margin-left: 1%;
     margin-top: 1vw;
}

/* --------対象----------------------- */
.human {
    width: 15%;
    margin-left: 1%;
    margin-top: 1vw;
}
/* --------関連キーワード-------------- */
.keyword {
    width: 60%;
    margin-top: 1vw;
}
.keyword-kids {
    display: flex;
}
.plan-5 {
    width: calc(100%/3);
}
.plan-5 p {
    font-size: 1.0vw;
}
.submit {
    margin-top: 2vw;
    line-height: 2;
}
.submit input {
    display: block;
    width: 11em;
    margin-left: auto;
    margin-right: auto;
    background-color: #DEE6FC;
}


/* -------下線枠------------ */
/* -----セクション➂------------------------ */

section:nth-of-type(3) {
    display: flex;
    width: 80%;
    height: 74vh;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2vw;
    margin-bottom: 2vw;  
}
.map1 {
    width: 45%;
    margin-right: 10%;
} 
.map1 img {
    width: 100%;
}
.map2 {
    width: 45%;
}
.map2 ol a {
    display: block;
    text-decoration: none;
}
.map2 ol a li {
    line-height: 2.0;
    list-style-position: inside;
    list-style-type: decimal;
    font-size: 1.1vw;
    border-bottom: 1px dotted #909090;
}
.map2 ol a li:nth-of-type(1) {
    border-top: 1px dotted #909090;
}


/* -------下線枠------------ */
/* -----セクション➃------------------------ */
section:nth-of-type(4) {
}
section:nth-of-type(4) h2 {
color: #762f07;
}
section:nth-of-type(4) p {
    width: 60%;
    margin-left: auto;
    margin-right: auto;

    margin-bottom: 2vw;
    font-size: 1.4vw;
}


/* -------下線枠------------ */
/* -----セクション➄------------------------ */
section:nth-of-type(5) {
    width: 100%;
    height: 52vh;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3vw;
}
section:nth-of-type(5) h2 {
    font-size: 2vw;
    text-align: center;
}
section:nth-of-type(5) form {
    width: 35%;
    height: 40vh;
    margin-left: auto;
    margin-right: auto;
    background-color: beige;
}
label {
    margin-left: 1vw;
}
/* --------------------- */
.form-1 {
    display: flex;
    width: 100%;
}
.form-1 label {
    display: block;
    width: 30%;
}
.form-1 input {
    display: block;
    width: 70%;
}
/* --------------------- */
.seibetu {
    display: flex;
    width: 100%;
}
.seibetu label{
    width: 30%;
}
.seibetu-1{
    width: calc(70%/3);
    text-align: center;
    border: 1px solid #909090;
    background-color: #fff;
}
/* -------------------- */
.form-2 {
    display: flex; 
    width: 100%;
    height: 8vh;
}
.form-2 label {
    width: 30%;
}
.form-2 textarea {
    width: 70%;
    height: 10vh;
}
/* ----------------- */
.form-3 {
    margin-top: 5vw;
    line-height: 2vw;
}
 
input[type="submit"] {
    display: block;
    width: 20%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    transition: 1s;
}
input[type="submit"]:hover {
    line-height: 2vw;
    color: #FFF;
    background-color:blue;
    transition: 1s;
}

/* -------下線枠------------ */
/* -----セクション⓺------------------------ */
section:nth-of-type(6){
    width: 80%;
    height: 25vh;
    margin-left: auto;
    margin-right: auto;
}
section:nth-of-type(6) h2 {
    font-size: 2vw;
    font-family: "Noto Sans JP", sans-serif;
}
.sannkou {
    display: flex;   
}
.sannkou-kids {
    width: calc(100%/7);
    overflow: hidden;
    transition: 1s;
}
.sannkou-kids:hover {
    transform: scale(1.1,1.1);
    transition: 1s;
}
.sannkou-kids img {
    width: 100%;
    vertical-align: bottom; 
}
.sannkou-kids a {
    display: block;
    text-decoration: none;

}


/* ----------ここからfooter-------- */  
footer {
    width: 100%;
    height: 55vh;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1vw;
    background-color: YellowGreen;
}
/* ----------------- */
footer h3 {
    font-size: 2vw;
}
.footer-box {
    display: flex;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2vw;
}
.left-box {
    width: 35%;
    margin-right: 5%;
}
.right-box {
    width: 60%;
}
/* ----------------- */
.left-boxkids img {
    width: 100%;
}
.left-box h3 {
    font-size: 1.5vw;
}
.footer-addressbox {
    margin-top: 1vw;   
}
address {
    font-size: 1.0vw;
    font-style: normal;
    white-space: pre-wrap;
}
/* ------------------ */
.sns  {
    display: flex;
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    color: #fff;
}
.sns a {
    display: block;
    width: 30%;
    text-align: center;
    font-size: 4vw;
}
.sns a:nth-of-type(2) {
    display: block;
    margin-left: 5%;
    margin-right: 5%;
}
.sns a i {
    width: 100%;
    color: #fff;
}
/* -------------------- */
.footer-menu {
    display: flex;
    margin-top: 2vw;
}
.menu-kids1 {
    width: 45%;
    margin-left: 10%;
    font-size: 1.2vw;
}
.menu-kids1 li {
    list-style-position: inside;
}
.menu-kids2 {
    width: 45%;
    font-size: 1.2vw;
}
.menu-kids2 li {
    list-style-position: inside;
}
/* ------------------ */
.copy {
    width: 100%;
    padding-top: 1vw;
    padding-bottom: 3vw; 
}
.copy p {
    font-size: 1vw;
    text-align: center;
    color: #202020;
}
/* ------------タブ切り替え----------------- */
.tabs {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
    border-bottom: 0px solid #92aad6;
}
.tabs li {
    padding: 7px 20px;
    cursor: pointer;
    border: 1px solid #92aad6;
    border-bottom: none;
    margin-right: 4px;
    background-color: #dee6fc;
}
.tabs li.active {
    background-color: #ffffff;
    border-bottom: 0px solid #92aad6;
}
.tab-content {
    display: none;
    border: 1px solid #92aad6;
    padding: 15px;
    background-color: #ffffff;
}
.tab-content.active {
    display: block;
}
/* ----------------------------------- */