@charset "UTF-8";
/* 
 KUSUBURUHOUSE
 Author: Kota Yamada
*/
@import"https://fonts.googleapis.com/css2?family=Caveat&display=swap";

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* 
font-family: 'Cormorant', serif;
font-family: 'Shippori Mincho', serif;
*/

.tegaki{
    font-family: "shinryu", sans-serif;
    font-weight: 400;
    font-style: normal;
}

html {
    font-size: 53%;
}

/* *{
    outline: 1px solid magenta; 
} */

.bg-gray{
    background: #f0f0f0;
    color: #333;
    padding: .3em;
}
body, h1, h2, h3, h4, h5, a, b, p, span, button {
    font-size: 1.6rem;
    font-family: 'Kiwi Maru', serif;
    /* font-family: 'Zen Kaku Gothic Antique', sans-serif; */
    font-family: "游ゴシック体 Pr6N M", "Yu Gothic Pr6N M", "游ゴシック Medium", YuGothic, YuGothicM, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Sans", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, sans-serif;
    line-height: 2.25;
    color: #333;
    font-weight: 500;
}

h1{ 
    font-size: 4rem;
}
h2{ 
    font-size: 2.4rem;
}
h3{ font-size: 2rem;}

p{ font-size: 1.6rem;}
.mincho{
    font-family: 'Shippori Mincho', serif;
}

ol, ul{
    margin: 0;
    padding: 0;
}
.cormorant{
    font-family: 'Cormorant', serif;
}

.en{
    font-family: 'Cormorant', serif;
    font-size: 1.5rem;
    color: #666;
    display: block;
    line-height: 1;
}
.jp{
    font-size: 3rem;
    line-height: 1.6;
}

.vertical{
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
}

.home h2 span{
    font-size: 4.6rem;
    line-height: 1.6;
}
/*--------------------------------
	|| 全般的なスタイル
--------------------------------*/
*{
    margin: 0;
    padding: 0;
}

img{
    max-width: 100%;
}

a{
    text-decoration: none;
    color: #333;
}

.link a:link{
    text-decoration: none;
}

.sp{
    display: block;
}
.pc{
    display: none;
}


/* 外部リンクスタイル */
/* a[href^="http"]:after,
a[href^="//"]:after {
  margin: 0 0 0 3px;
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
}
a[href^="https://kusuburuhouse.com/"]:after {
  margin: inherit;
  font-family: inherit;
  content: '';
  font-weight: inherit;
} */

dt{
    font-weight: normal;
}
/* 基本的な設定 */
.flex{
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    justify-content: space-between;
}

.ttl{
    margin-top: 1rem;
    margin-bottom: 2.5rem;
    line-height: 1.5;
    font-weight: 500;
}

button{
    background: none;
    border: none;
    font-family: initial;
}

#message, #japan_map, #information, #concept, #about, #detail, #price, #media, #faq, #access, #youtube{
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.inner{
    padding-left: 5vw;
    padding-right: 5vw;
}

/*--------------------------------
	|| header
--------------------------------*/
.header{
    position: fixed;
    width: 100%;
    height: 15vw;
    z-index: 9999;
}

.header-inner{
    position: relative;
}

/*--------------------------------
	|| メインヴィジュアル
--------------------------------*/

main{
    height: calc(100vh - 3vh);
    display: flex;
    padding-top: 6rem;
}

.main-inner{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-items: center;
    align-content: center;
    margin: auto;
    gap: 2vh;
}

.logo-area{
    animation: fadeIn 5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
    margin: auto;
}

@keyframes fadeIn{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

.logo-area{
    margin:  0 auto;
    width: auto;
}
.logo-area img{
    width: 90vw;
    max-width: 320px;
}

.main-txt span{
    color: #fff;
    font-size: 3rem;
    line-height: 1.8;
    font-weight: 600;
}

.main-under{
    align-items: center;
    justify-items: center;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
}

.renewal-txt{
    width: calc(96vw - 2rem);
    background: rgba(255, 255, 255, .5);
    padding: 1rem;
    align-items: center;
    justify-items: center;
    margin: 0 auto 3rem;
}

.renewal-txt span{
    margin: 0;
    padding: 0;
    line-height: 1.5;
}

.line-area{
    max-width: 80vw;
    align-items: center;
    justify-items: center;
    margin: auto;
    align-self: flex-end;
}

.line-area a{
    display: block;
}

.line-area a:after{
    display: none;
}

.line-area img{
    max-width: 100%;
    height: auto;
}

/*--------------------------------
	|| message
--------------------------------*/

.message{
    background: url(img/goka-dorone.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 20rem;
    padding-bottom: 20rem;
}
.message-txt{
    margin: auto;
    height: auto;
}

.message-txt span{
    font-size: 2.4rem;
    color: #fff;
}


/*--------------------------------
	|| japan map
--------------------------------*/
.japan_map{
    /* padding-top: 5.4rem; */
}

.japan_bg{
    position: relative;
    overflow: hidden;
}
/* .japan_bg::before{
    content: '';
    background: url(img/ivory_top.svg) top center no-repeat;
    background-size: cover;
    position: absolute;
    top: -16rem;
    left: 0;
    display: block;
    width: 100%;
    height: 17rem;
    z-index: 2;
    overflow-x: auto;
} */

.ivory_bg{
    background-color: #F8F5F0;
}
.map_svg{
    position: absolute;
    width: 150vw;
    height: auto;
    top: 3vh;
    right: -55vw;
}

.map_svg img{
    display: block;
    vertical-align: top;
    width: 100%;
}



/*--------------------------------
	|| features
--------------------------------*/

.features-warap{
    background: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(img/window-bg2.jpg) top center no-repeat;
    background-size: cover;
    padding-top: 8rem;
    padding-bottom: 8rem;
    justify-content: center;
    justify-items: center;
}

.features-warap h2{
    color: #fff;
    font-size: 3rem;
}

.features-warap span{
    color: #fff;
    font-size: 2.2rem;
}

.features-items{
    margin: 0 auto;
    line-height: 2;
}

/*--------------------------------
	|| concept
--------------------------------*/

.concept--header{
    display: flex;
    align-items: flex-start;
    justify-content:center;
}

.concept--header:before{
    content: '';
    display: block;
    height: 0;
    padding-top: 100%;
}

.concept--ttl{
    width: 15vw;
    transform:rotate(-180deg);
}

.concept--ttl h1{
    font-family:'Times New Roman', Times, serif;
    color: #dad6c5;
    font-size: 4rem;
}

.concept--right{
    position: relative;
    width: 80vw;
    height: 100%;
    margin-top: 0;
}

.concept--img{
    height: 100%;
}
.concept--img img{
    display: block;
}

.concept--img01{
    z-index: 1;
    width: 60vw;
    left: 0;
    top: 30px;
}
.concept--img02{
    z-index: 2;
    width: 40vw;
    top: 0;
    right: -15px;
}
.concept--txt{
    z-index: 3;
    padding-bottom: 2em;
}

.concept--txt h2{
    font-size: 2.3rem;
    font-weight: bold;
    margin-bottom: 10px;
    text-shadow: 2px 2px 10px #fff ,
                -2px 2px 10px #fff ,
                2px -2px 10px #fff ,
                -2px -2px 10px #fff;
    padding: 0;
    margin-top: 2rem;
}

.parent{
    position: relative;
}

.child{
    position: absolute;
}
.child:before{
    content: '';
    display: block;
    padding-top: 120%;
}

.more{
    color: #1f1f1f;
    text-align: center;
    padding: 1em;
    border: 1px solid #1f1f1f;
    flex-wrap: wrap;
    width: 100%;
    margin: 2rem auto 0;
}

.more a{
    display: block;
}

/*--------------------------------
	|| Information
--------------------------------*/

dl.info{
    width: 100%;
}
dl.info dt{
    font-size: .8em;
    color: rgb(46, 46, 46);
}
dl.info dd{
    border-bottom: 1px solid #555;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

/*--------------------------------
	|| access
--------------------------------*/
.access--area{}

.access--area h2{
    color: #152c51;
    margin-bottom: 1.5rem;
    font-weight: 500;
}

/* Google Mapを囲う要素 */
.gmap {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 40%; /* 比率を4:3に固定 */
  }
   
  /* Google Mapのiframe */
  .gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .address{
    font-size: 1.5rem;
    border: 1px solid #555;
    padding: 1.5em;
    text-align: center;
    margin: 2rem auto .5rem;
    display: table;
  }

  .bus-time{
    color: #888;
    border: 1px solid #888;
    padding: 1rem;
    margin-bottom: 2rem;
  }

  .bus-time h3{
    margin-bottom: 1rem;
  }
  
  .bus-time ul{
    padding-left: 3rem;
  }

/*--------------------------------
	|| detail
--------------------------------*/
.detail-list{}

.detail-list dt{
    width: 25%;
    padding: 2rem 0;
    border-bottom: 2px solid #152c51;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    line-height: 1.5;
}
.detail-list dd{
    width: 75%;
    padding: 2rem 0 2rem 4.5rem;
    margin: 0;
    border-bottom: 1px solid #dedede;
    line-height: 1.5;
}

/*--------------------------------
	|| YouTube
--------------------------------*/

#youtube{
    background: #ccc;
}

.youtube-news {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    /* overflow-x: scroll; */
    gap: 30px 20px;
    height: 100%;
}

.youtube-caption {
    width: 100%;
}

.youtube-news iframe{
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    max-width: 800px;
    display: block;
    margin: auto;
}

.youtube-bg {
    background-image: linear-gradient(rgba(0,0,0,0.2),rgba(0,0,0,0.2)),url(img/vietnam.jpg) ;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50vh;

}

.youtube-inner {
    text-align: center;
}
.youtube-inner h1 {
    background: #fff;;
}


.youtube-link a {    
}

.shiny_btn01 {
    display: inline-block;
    position: relative;
    width: 100%;
    max-width: 500px; /* ボタン幅 */
    padding: 1em 3em;
    background-color: #F88400; /* 背景色 */
    line-height: 1;
    box-shadow: 0 3px 0 0 #995100; /* 影の色 */
    border-radius: 5px;
    font-weight: normal; /* 文字の太さ */
    font-size: 1.8rem;
    color: #fff; /* 文字の色 */
    text-align: center;
    text-decoration: none;
    overflow: hidden;
    transition: 0.3s;
  }
  .shiny_btn01::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    transition: 0.2s;
    animation: shiny_btn01 3s ease-in-out infinite;
  }
  
  /* マウスオーバーした際のデザイン */
  .shiny_btn01:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
  }
  
  /* 光るアニメーション */
  @-webkit-keyframes shiny_btn01 {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
  }

/*--------------------------------
	|| footer
--------------------------------*/
  .footer--top{
    background: #152c51;
    padding-top: 5rem;
    padding-bottom: 2rem;
    color: #fff;
  }

 .footer-kusuburu{
    font-size: 3rem;
    text-align: center;
    margin-bottom: 2rem;
    color: #fff;
 } 
 .footer-kusuburu span{
    font-size: 1rem;
    display: block;
    color: #fff;
 }

  .footer--under{
    background: #152c51;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.footer--menu{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    color: #fff;
}
.footer--menu div{
    text-align: center;
    width: 100%;
}

.footer--menu a{
    display: block;
    color: #fff;
}

.footer--yoyaku{
    font-size: 2rem;
    border: 1px solid #fff;
    padding: 1rem;
    text-align: center;
    display: table;
    margin: 0 auto 2rem;
}

.footer--yoyaku a{
    color: #fff;
}
.footer--tel{
    font-size: 2rem;
    text-align: center;
}

.footer--tel a{
    color: #fff;
}

.footer--sns{
    font-size: 1.5rem;
    text-align: center;
    display: table;
    margin: 0 auto 2rem;
}

.footer--sns i{
    font-size: 4rem;
    color: #fff;
}

  .copylight{
    font-size: .8rem;
    text-align: center;
  }

.bottomFix{
    width: 100%;
}

/*メニューをページ下部に固定*/
#sp-fixed-menu{
    position: fixed;
    width: 100%;
    bottom: 0px;
    font-size: 0;
    opacity: 0.9;
    z-index: 99;
 }
 
 /*メニューを横並びにする*/
 #sp-fixed-menu ul{
    display: flex;
    list-style: none;
    padding:0;
    margin:0;
 }
 
 #sp-fixed-menu li{
    justify-content: center;
    align-items: center;
    width: 50%;
    padding:0;
    margin:0;
    font-size: 14px;
 }
 
 /*左側メニューを緑色に*/
 #sp-fixed-menu li:first-child{
    background: #Ffff;
    
 }
 #sp-fixed-menu li:first-child a{
    color: #152c51;
 }
 
 /*左側メニューをオレンジ色に*/
 #sp-fixed-menu li:last-child{
    background: #152c51;
    border-top: 1px solid #fff;
 }

 #sp-fixed-menu li:last-child a{
    color: #fff;
 }
 
 /*ボタンを調整*/
 #sp-fixed-menu li a{
    color: #fff;
    text-align: center;
    display:block;
    width: 100%;
    padding:20px;
    line-height: 1;
 }

/*--------------------------------
	|| price
--------------------------------*/
#price{
}

.c-table {
    width: 100%;
    box-sizing: border-box;
    background: #fff;
    margin: 3rem auto 0
}

.c-table thead {
    border-right: 1px solid #1b2f5b
}

.c-table thead tr td {
    background: #1b2f5b;
    color: #fff;
    font-family: "FOT-ç­‘ç´«Aã‚ªãƒ¼ãƒ«ãƒ‰æ˜Žæœ Pr6 D","TsukuAOldMinPr6-D",serif;
    line-height: 1;
    padding: 1.5rem;
    box-sizing: border-box;
    text-align: center
}

.c-table thead tr td span {
    line-height: 1.4
}

.c-table thead tr td+td {
    border-left: 1px solid rgba(255,255,255,.2)
}

.c-table tbody {
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6
}

.c-table tbody tr th {
    background: #d0d1d2;
    color: #fff;
    font-family: "FOT-ç­‘ç´«Aã‚ªãƒ¼ãƒ«ãƒ‰æ˜Žæœ Pr6 D","TsukuAOldMinPr6-D",serif;
    font-weight: normal;
    line-height: 1;
    padding: 2rem;
    box-sizing: border-box
}

.c-table tbody tr th span {
    line-height: 1.4
}

.c-table tbody tr td {
    box-sizing: border-box;
    padding: 1.5rem
}

.c-table tbody tr td:first-child {
    border-left: 1px solid #e6e6e6
}

.c-table tbody tr td+td {
    border-left: 1px solid #e6e6e6
}

.c-table tbody tr+tr th {
    border-top: 1px solid rgba(255,255,255,.1)
}

.c-table tbody tr+tr td {
    border-top: 1px solid #e6e6e6
}

.c-table.clm1 {
    border-top: 1px solid #e6e6e6
}

.c-table.clm1 tr th {
    background: #1b2f5b;
    color: #fff;
    font-family: "FOT-ç­‘ç´«Aã‚ªãƒ¼ãƒ«ãƒ‰æ˜Žæœ Pr6 D","TsukuAOldMinPr6-D",serif;
    line-height: 1;
    padding: 1.5rem;
    box-sizing: border-box;
    text-align: center;
    vertical-align: middle
}

.c-table.clm1 tr th span {
    line-height: 1.4
}

.c-table.clm1 tr td {
    padding: 1.5rem
}

.c-table.feelist {
    margin-top: 3rem;
    margin-bottom: 1rem;
}

.c-table.feelist tr:first-child th,.c-table.feelist tr:first-child td {
    width: 18rem
}

.c-table.feelist tr td {
    text-align: center
}



em{
    font-style: normal;
}
.t-price {
    font-family: 'Shippori Mincho', serif;
    color: rgb(147, 53, 53);
    display: block;
    line-height: 1.4;
}

.t-price em {
    font-size: 2.4rem;
}

.ans{
    color: #555;
    font-size: 1.4rem;
    line-height: 1.6;
}

.c-list_ans{
    list-style-type: none;
    padding-left: 0;
    line-height: 1.5;
    color: #555;
    letter-spacing: .2rem;
}
.c-list_ans li{
    margin-bottom: 1rem;
}

.option-list dl{
    margin-bottom: 0;
}

.option-list dt{
    width: 70%;
    padding: 1rem 0;
    padding-left: 1.5rem;
    border-bottom: 1px dotted#333;
    /* display: flex; */
    justify-content: flex-start;
    align-items: center;
    line-height: 1.5;
}
.option-list dd{
    width: 30%;
    padding: 1rem 0 1rem 0;
    margin: 0;
    text-align: right;
    border-bottom: 1px dotted#333;
    
    line-height: 1.5;
}

.price{
    /* background: linear-gradient(rgba(255,255,255,0.5),rgba(255,255,0.5)),url(img/price_bg.jpg) no-repeat top center; */
    background-size: cover;
    background-attachment: fixed;
}
.price h1{
    line-height: 1;
}
.price h2{
    margin-top: 3rem;
    line-height: 1.6;
}
.price h3{
    margin-top: 3rem;
    line-height: 1;
}

.osusume{
    background: rgb(147, 53, 53);
    color: #fff;
    padding: 0 .5rem;
    line-height: 1.6;
    font-size: 1.4rem;
    margin-right: .5rem;
    display: inline-block;

}

.tenperoff{
    font-family: 'Shippori Mincho', serif;
    color: rgb(147, 53, 53);
    font-size: 1.8rem;
    font-weight: bold;
}

/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;/*スライド左右の余白調整*/
}

/*infoエリアをはじめは非表示*/
#info{
	display: none;
}

/*モーダルの横幅を変更したい場合*/
.modaal-container{
    max-width: 600px;
}

/*モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
	background:#ccc;	
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	background:#666;
}

.modaal-content-container p{
    line-height: 1.6;
}

/*==================================================
アコーディオンCSS
===================================*/

/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin:0 auto;
}

.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
	border: 1px solid #ccc;
}

.accordion-area section p{
    margin-bottom: 0;
    line-height: 1.5;
    gap: 1em;
}
/*アコーディオンタイトル*/
.title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1.75rem;
    line-height: 1.5;
    font-weight: normal;
    padding: 3% 3% 3% 50px;
    transition: all .5s ease;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
}

/*アイコンの＋と×*/
.title::before,
.title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;
    
}
.title::before{
    top:48%;
    left: 15px;
    transform: rotate(0deg);
    
}
.title::after{    
    top:48%;
    left: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.title.close::before{
	transform: rotate(45deg);
}

.title.close::after{
	transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;/*はじめは非表示*/
    background: #f3f3f3;
	margin:0 3% 3% 3%;
    padding: 3%;
}

.title span.facility {
    color: #fff;
    background: red;

}
.header_faq{
}

.main-inner {
    display: flex;
}
.osirase202502 {
    position: absolute;
    background: rgba(255,255,255,.7);
    padding: 1em;
    width: 800px;
    max-width: 90%;
    margin-left: 5%;
    display: grid;
    place-items: center;
    justify-content: center;
    ;
}

.osirase202502 h2{
    text-align: center;
}
.osirase202502 p{
    line-height: 1.5;
}


.osirase202502-pc {
    display: none;
}

.price__wrap2025{
    display: flex;
    align-items:stretch;
    justify-content:space-between;
    gap: 1%;
}

.price_box{
    width: 50%;
    display: flex;
    flex-direction:column;
    background: #f4f3f3;
    padding: 20px;   
}

.price_box dl{
    margin-bottom: 0;
}
.price_ttl{}

.price_ttl h2 {
    margin-top: 0;
}
.price_ttl h2 span{
    font-size: .6em;
}
.price_body{
    border-bottom: 1px solid #555;
    flex-grow:1;
}
.price_body dl dt{
    float: left;
}
.price_body dl dd{
    text-align: right;
    margin-left: 40%;
}

.price_total dl dt{
    float: left;
}
.price_total dl dd{
    text-align: right;
    margin-left: 40%;
    margin-bottom: 15px;
}

.price_btn {
    
}

.price_btn a{
    color: #fff;
    display: block;
    text-align: center;
    line-height: 2.5;
}

.price_menu01 {
    background-color: #dfe9f8;
}
.price_menu02 {
    background-color: #f8e7df;
}
.price_menu03 {
    background-color: #e2f7e2;
}
.price_btn01 {
    background: #669df0;
}
.price_btn02 {
    background: #f08666;
}
.price_btn03 {
    background: #50bb4a;
}

@media only screen and (max-width:600px) {
    html{
        font-size: 62.5%;
    }

    .price__wrap2025 {
        flex-direction: column;
    }
    .price_box {
        width: 100%;
        margin-bottom: 20px;
    }
     .gmap {
        padding-top: 60%; /* 比率を4:3に固定 */
      }
      .c-table thead tr td {
        padding:1rem
    }

    .c-table tbody tr th {
        padding: 1.5rem 1rem;
        width: 20%;
    }

    .c-table tbody tr th span {
        font-family: 'Shippori Mincho', serif;
        line-height: 1.4;
    }

    .c-table tbody tr td {
        padding: 1.5rem 1rem
    }

    /* .c-table.feelist tr:first-child th,.c-table.feelist tr:first-child td {
        width: 9rem;
        padding: 2rem 0;
    } */

    .c-table.feelist thead td {
        padding-left: 0;
        padding-right: 0
    }
}

@media only screen and (min-width:600px) {
.concept--ttl{
        width: 10vw;
    }
    .concept--ttl h1{
        font-size: 4rem;
    }    
}

@media only screen and (min-width:1025px) {
	body {
    	font-size: 53%;
		max-width: 100%;
        background-size: auto;
    }
    .sp{
        display: none;
    }
    .pc{
        display: block;
    }
    main{
        padding-top: 0;
        height: auto;
    }
    .main-inner{
        max-width: 1200px;
    }

    .logo-area{
        /* padding-top: 15vh; */
    }

    .renewal-txt{
        max-width: 1200px;
        margin: 0 auto 30px;
        font-size: inherit;
    }

    .line-area{    
        max-width: 400px;
    }

    .inner{
        max-width: 90vw;
        margin: 0 auto;
    }

    .concept--header{
        display: flex;
        align-items: flex-start;
        justify-content:center;
    }

    .concept--ttl h1{
        font-size: 8rem;
    }

    .concept--right{
        width: 80vw;
        height: auto;
        margin-top: 0;
    }
    
    .concept--img{
        height: 100%;
    }
    .concept--img01{
        z-index: 1;
        width: 60%;
        left: 0;
        top: 80px;
    }
    .concept--img02{
        z-index: 2;
        width: 40%;
        top: 0;
        right: -;
    }
    .concept--txt{
        z-index: 3;
        top: -9em;
    }
    
    .concept--txt h2{
        font-size: 4rem;
        margin-bottom: 10px;
        text-shadow: 0 0 10px #fff;
        padding: 0;
    }    
	.message{
        background: url(img/goka-dorone.jpg) no-repeat center center;
        background-size: cover;
    }
    .message-txt span{
        font-size: 3rem;
    }
	.title--wrap{
        padding-top: 10vh;
    }
    .map_svg{
        right: -10vw;
		width: 100%;
    }
    .youtube-news {
        flex-direction: row;
        }   
}
/*=== 9-1-4 矢印が動いてスクロールを促す  ====*/

/*スクロールダウン全体の場所*/
.scrolldown4{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:1%;
	right:50%;
    /*矢印の動き1秒かけて永遠にループ*/
	animation: arrowmove 1s ease-in-out infinite;
}

/*下からの距離が変化して全体が下→上→下に動く*/
@keyframes arrowmove{
      0%{bottom:1%;}
      50%{bottom:3%;}
     100%{bottom:1%;}
 }

/*Scrollテキストの描写*/
.scrolldown4 span{
    /*描画位置*/
	position: absolute;
	left:-20px;
	bottom:10px;
    /*テキストの形状*/
	color: #000;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

/* 矢印の描写 */
.scrolldown4:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom: 0;
    right: -6px;
    /*矢印の形状*/
    width: 1px;
    height: 20px;
    background: #000;
    transform: skewX(-31deg);
}

.scrolldown4:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	right:0;
    /*矢印の形状*/
	width:1px;
	height: 80px;
	background:#000;
}/*========= LoadingのためのCSS ===============*/

/* Loading背景画面設定　*/
#splash {
    /*fixedで全面に固定*/
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 999;
	text-align:center;
	color:#fff;
}

/* Loading画像中央配置　*/
#splash_text {
	position: absolute;
	top: 50%;
	left: 50%;
    z-index: 999;
	transform: translate(-50%, -50%);
	color: #fff;
	width: 100%;
}

/*IE11対策用バーの線の高さ※対応しなければ削除してください*/
#splash_text svg{
    height: 2px;
}

/*割れる画面のアニメーション*/
.loader_cover {
    width: 100%;
    height: 50%;
    background-color: #333;
    transition: all .2s cubic-bezier(.04, .435, .315, .9);
    transform: scaleY(1);
}
/*上の画面*/
.loader_cover-up {
    transform-origin: center top;
}

/*下の画面*/
.loader_cover-down {
    position: absolute;
    bottom: 0;
    transform-origin: center bottom;
}
/*クラス名がついたらY軸方向に0*/
.coveranime {
    transform: scaleY(0);
}