/*メインイメージ -----------------------------*/

#MainBox{
  background: linear-gradient(
    to top,
    #1B8036 0%,
    #1B8036 30%,
    transparent 10%,
    transparent 100%
  );
}
.Main{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
}
.MainText{ display: flex; align-items: center; padding: 3rem 0 2rem;}
.MainText div{ padding: 0 0 0 1rem;}
.MainText .logoImg01{ width: 100%; max-width:155px;}
.CtokyoTitle{ font-size: 2rem; font-weight: 100; line-height: 1.2;}
.CtokyoTitle .Gcolor{ color:#1B8036; font-size: 2rem;}
.MainText div p{ line-height: 1.6; margin: 1rem 0 0;}
.MainText div p span{ font-size: 0.8rem;}
.mainMap{ width: 100%; max-width: 1000px; margin: 0 0 1rem 0;}
.maptext{ color: #fff;}

.MbtnBox{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    color: #fff;
    padding: 0 2%;
}
#dlBtnbox{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 2rem;
}
.dlBtn{
    width: 100%;
    max-width: 320px;
    background: #fff;
    padding: 1rem;
    border-radius: 40px;
    border: #fff 3px solid;
    font-weight: bold;
    text-align: center;
    margin: 0.5rem;
    transition: 0.6s;
}
.dlBtn:hover{
    background: #1B8036;
    border: #fff 3px solid;
    color: #fff;
}

/*リード文*/
.leadSentence{ background:#1B8036; color: #fff; padding: 0 0 4rem;}
.leadcont{ width: 90%; max-width: 1000px; margin: 0 auto; line-height: 1.6rem;}
.leadcont h2{ font-size: 2rem; font-weight: 100; line-height: 1.2; margin: 0 0 1rem 0;}
.leadtext span{ display: block; padding: 1rem 0 0 0;}

/*メインコンテンツ*/
#mainCont{ width: 90%; max-width: 1000px; margin: 0 auto 4rem;}
.mainSentence{ padding:4rem 0 0;}
.titlecont h2{ font-size: 4rem; font-weight: 100; line-height: 1.4; text-align: center;}
.titlecont h2 .texts{ font-size:2.4rem;}
.colorP{ color: #BF4947;}
.titleleadtext{ padding: 2rem 0; line-height: 1.6;}

#pglink{
    display: grid;
    grid-template-columns: 33.3% 33.3% 33.3%;
    grid-row-gap: 1.5rem;
    column-gap: 0.5rem;
    justify-content: center;
    list-style: none;
    margin: 0 0 4rem 0;
}
#pglink>li>a{
    display: block;
    width: 100%;
    max-width: 326px;
    background: #fff;
    border: #dcdcdc 1px solid;
    border-radius: 40px;
    padding: 1rem 0.5rem;
    transition: 0.6s;
}
#pglink>li>a:hover{
    background: #1B8036;
    color: #fff;
}
.btn-listtop{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    background: #000;
    color: #fff!important;
    font-weight: bold;
    line-height: 1.2;
    border-radius: 60px;
    width: 80px;
    height: 80px;
}
.btn-listtop>span{ display: block;}

/*小見出し・アイコン-------------------------------------*/
.placeTitle{ margin: 0 auto 2rem;}
.subtexts{
    font-size: 2.4rem;
    font-weight: 100;
    text-align: center;
    line-height: 1.2;
    border-bottom: 1px solid #000;
    padding: 0 0 1rem 0;
    margin: 0 0 1rem 0;
}
.subtexts span{ color: #1B8036;}

.iconList{
    display: flex;
    flex: 1 1 30px;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
}
.iconList li{
    display: flex;
    align-items: center;
    width: 16.5%;
}
.iconList li img{ width: 30%; max-width: 50px; padding: 0 0.5rem 0 0;}
.iconList li p{width: 69%; line-height: 1.2;}
.iconList li span{ display: block; padding: 0 0.2rem 0 0 ;}


/*コンテンツ ------------------------------------------*/
.spotBox{ display: flex; flex-wrap: wrap; justify-content: space-between;}
.spotCont{ width: 48.5%; height: auto; margin: 0 0 1rem 0;}
.spotTitle{ margin: 2rem 0 1rem 0;}
.spotTitletext{
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    line-height: 1.2;
    border-bottom: 1px solid #000;
    padding: 0 0 0.5rem 0;
    margin: 0 0 1rem 0;
}
.conticonList{
    display: flex;
    list-style: none;
    
}
.conticonList li{
    margin: 0 0.5rem 0 0;
 }
 .bctnumber{
    color: #fff;
    background: #1B8036;
    width: 9%;
    min-width: 42px;
    text-align: center;
    letter-spacing: -3px;
    text-indent: -5px;
    border-radius: 30px;
    padding: 0.5rem 0.8rem;
    margin: 0 0.5rem 0 0;
 }

 .imgTextBox{ display: flex; align-items: flex-start; margin: 0 0 1rem 0;}
 .imgTextBox img{ width: 100%; max-width: 240px; object-fit: contain; margin: 0 0.5rem 0 0;}
 .imgTextBox p{ line-height: 1.6;}

 .imgTextBox2{ display: block; width: 100%;max-width: 476px;}
 .imgTextBox2 img{ max-height: 200px;}
 .imgTextBox2 p{ line-height: 1.6; margin: 1rem 0 2rem 0;}

 .spotInfo{ list-style: none;}
 .spotInfo li{ display: flex; align-items: flex-start; line-height: 1.3; margin: 0 0 1rem 0;}
 .spotInfo li img { margin: 0 0.5rem 0 0;} 
 .spotlink{ display: block!important; line-height: 1.4;}
 .linkTitle{ display: block; color: #1B8036;}
 .spotInfo li a{ display: block; text-decoration: underline; transition: 0.6s;}
 .spotInfo li a:hover{ text-decoration: none;} 
 .spotInfo li span{ display: block;}

 /*フッターテキスト*/
.footerText{ line-height: 1.6; border-top:1px solid #000; padding: 2rem 0 0 0; margin: 2rem 0 0 0;}

@media (max-width: 1024px) {
    .spBr{ display: inline!important;}
    .imgTextBox{ display: block;}
    .imgTextBox img{ max-width: none;}

    #pglink{grid-template-columns: 37% 37%;}
    .imgTextBox2 img{width: 100%!important; max-height: none!important;}
}

@media (max-width: 860px) {
    #pglink {
        grid-template-columns: 46% 46%;
    }
}

@media (max-width: 640px) {
    .MainText { padding: 2rem 0 1rem;}
    .MainText .logoImg01 {}
    .CtokyoTitle { font-size: 1.6rem; line-height: 1.2 !important;}
    .CtokyoTitle .Gcolor{ font-size: 1.6rem;}
    #MainBox{background: linear-gradient(to top, #1B8036 0%, #1B8036 50%, transparent 10%, transparent 100%);}
    #dlBtnbox{display: block;}
    .MbtnBox{ width: 100%; margin: 0 0 8% 0;}

    #pglink{grid-template-columns: 100%;}
    #pglink>li>a {
        max-width: 350px;
        border-radius: 40px;
        padding: 1rem;
    }
    /*見出し*/
    .titlecont h2 .texts{ display: block;}

    /*アイコン*/
    .iconList li{ width: 33%; margin: 0 0 0.2rem 0;}
    .iconList li img{ width: 50%;}
    .iconList li p{ font-size: 0.68rem;}

    /*コンテンツ*/
    .spotCont{ width: 100%;}
    .imgTextBox{ display: block;}
    .imgTextBox img{ max-width:640px;}
    .imgTextBox p{ margin: 1rem 0 2rem;}
    .imgTextBox2 img{ width: 100%; max-height: none;}
}