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

　●　ようこそ的エリア
　●　Newsエリア
　●　魅力エリア（出来る事）※その他の～は別
　●　その他の特徴
　●　スライド調整

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


/*========================================
　●　ようこそ的エリア
========================================*/
.sec-welcome{
 position: relative;
 margin-top: -17px;
}

.welcomeWrap{
 display: flex;
  align-items: center;
  flex-direction: column;
}

.welcome--img{ order: 1;
 width: 100%;
 max-width: 516px;
 margin-bottom: 21px;
}

.sec-welcome h2{ order: 2;
 margin-bottom: 32px;
 font-family: 'Kiwi Maru','Noto Sans JP', sans-serif;
 font-size: 36px;
 line-height: 1.3;
 text-align: center;
}

.sec-welcome h2 .u-font{ font-size: 28px;}

.welcome--text01{
 margin-bottom: 28px;
 line-height: 2.2;
 text-align: center;
}

.welcome--text01 .u-br{}

.welcome--catch{ order: 3;
 position: absolute; left: calc(50% + 128px); top: -192px;
 transform: rotate(6deg);
}

.welcomeHeart{
 display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
 width: 100%;
 max-width: 758px;
 margin-bottom: 16px;
 margin-left: auto;
 margin-right: auto;
}

.welcomeHeart img{
 width: 100%;
 max-width: 220px;
 margin-bottom: 24px;
 margin-left: 2px;
 margin-right: 2px;
}

.welcomeBanner{ margin-bottom: 32px;}

.welcomeBanner p{
 margin-bottom: 16px;
 text-align: center;
}

.welcomeBanner p img{ width: 100%; max-width: 688px;}

.welcomeBanner p a{ transition: all 0.3s ease-out;}
.welcomeBanner p a:hover{ opacity: 0.6;}

.bg_dots__welcome{
 background:
  url("../images/bgdeco/deco_dots_l.png") no-repeat left bottom +86px / calc(304px * 1.0),
  url("../images/bgdeco/deco_dots_r.png") no-repeat right +84px top +106px / calc(304px * 0.8);
}

/*============================== □ max-width xxx */
@media screen and (max-width: 1280px){
.bg_dots__welcome{
 background:
  url("../images/bgdeco/deco_dots_l.png") no-repeat left bottom +86px / calc(304px * 0.8),
  url("../images/bgdeco/deco_dots_r.png") no-repeat right +48px top +106px / calc(304px * 0.6);
}
}/*----- media -----*/

/*============================== ■ max-width 1087 */
@media screen and (max-width: 1087px){

.welcome--catch{ order: 3;
 position: absolute; left: auto; right: 0; top: -162px;
 width: 100%;
 max-width: calc(480px * 0.8);
 transform: rotate(6deg);
}


.welcomeHeart img{
 width: 100%;
 max-width: calc(220px * 0.8);
}

.bg_dots__welcome{
 background:
  url("../images/bgdeco/deco_dots_l.png") no-repeat left bottom +126px / calc(304px * 0.4),
  url("../images/bgdeco/deco_dots_r.png") no-repeat right top +106px / calc(304px * 0.4);
}

}/*----- media -----*/

/*============================== □ max-width xxx */
@media screen and (max-width: 960px){
.welcome--catch{ order: 3;
 position: absolute; left: auto; right: 0; top: -162px;
 width: 100%;
 max-width: calc(480px * 0.65);
 transform: rotate(6deg);
}
}/*----- media -----*/

/*============================== ■ max-width 767 */
@media screen and (max-width: 767px){
.sec-welcome h2{
 margin-bottom: 16px;
 font-size: 28px;
}

.sec-welcome h2 .u-font{ font-size: 20px;}


.welcome--catch{ order: 3;
 position: static;
 width: 100%;
 max-width: calc(480px * 0.65);
 transform: rotate(6deg);
}

.bg_dots__welcome{
 background:
  url("../images/bgdeco/deco_dots_l.png") no-repeat left 76% / calc(304px * 0.3),
  url("../images/bgdeco/deco_dots_r.png") no-repeat right 76% / calc(304px * 0.3);
}

}/*----- media -----*/

/*============================== ■ max-width 520 */
@media screen and (max-width: 520px){
.welcome--text01{ text-align: left;}

.welcome--text01 .u-br{ display: none;}

}/*----- media -----*/

/*========================================
　●　Newsエリア
========================================*/
.bg_creamwave01.u-news{ margin-bottom: 68px;}

.sec-newsArea{
 width: 100%;
 max-width: 1060px;
 margin-left: auto;
 margin-right: auto;
 padding-top: 20px;
}

.sec-newsArea h2{
 margin-bottom: 24px;
 font-family: 'Kiwi Maru','Noto Sans JP', sans-serif;
 font-size: 32px;
 line-height: 1.3;
}

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

.newsMain{
 width: calc(100% - 316px);
}

.newsFB{ width: 300px; min-height: 600px;}

/*----------*/
.newsMain dl{
 padding-bottom: 20px;
}

.newsMain dl:last-of-type{ padding-bottom: 32px;}

.newsMain dt{
 line-height: 25px;
}

.newsMain dd{
 font-size: 20px;
 line-height: 1.5;
}

.newsMain dd .u-memo01{ font-size: 16px;}

.newsMain p{
 font-size: 20px;
 line-height: 1.5;
}

.newsMain p.c-indent:last-of-type{ padding-bottom: 16px;}

.newsMain figure{
 display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
 width: 100%;
 max-width: 612px;
}

.newsMain figure a{
 width: 49.5%;
 max-width: 300px;
 margin-bottom: 8px;
 transition: all 0.3s ease-out;
}
.newsMain figure a:hover{ opacity: 0.6;}

.newsMain figure a img{ width: 100%;}

/*============================== ■ max-width 1087 */
@media screen and (max-width: 1087px){}/*----- media -----*/

/*============================== ■ max-width 767 */
@media screen and (max-width: 767px){
.newsWrap{
 display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.newsMain{
 width: 100%;
 margin-bottom: 24px;
}

.newsFB{}

.newsMain dt{}

.newsMain dd{ font-size: 18px;}

.newsMain p{
 font-size: 18px;
 line-height: 24px;
}

/*----------*/
.newsMain figure{
  justify-content: space-around;
 margin-left: auto;
 margin-right: auto;
}

.newsMain figure a{ width: 49.5%; margin-bottom: 4px;}

}/*----- media -----*/

/*============================== ■ max-width 520 */
@media screen and (max-width: 520px){}/*----- media -----*/

/*========================================
　●　魅力エリア（出来る事）※その他の～は別
========================================*/
.sec-miryokuWhole{}

.sec-miryokuWhole h2{
 width: 100%;
 max-width: 640px;
 margin-bottom: 42px;
 margin-left: auto;
 font-family: 'Kiwi Maru','Noto Sans JP', sans-serif;
 font-size: 56px;
 line-height: 1.3;
 text-align: center;
}

/*------------------------------ 出来る事（共通パーツ） */
.miryokuTitle{
 display: flex;
  align-items: center;
  justify-content: flex-start;
 min-height: 198px;
 margin-bottom: 12px;
 padding-top: 8px;
 padding-left: 48px;
 font-family: 'Kiwi Maru','Noto Sans JP', sans-serif;
 font-size: 36px;
 line-height: 1.3;
 background: url("../images/bgdeco/deco_star01.png") no-repeat center left / auto;
}

.miryokuText{ margin-bottom: 48px; padding-left: 48px;}

.miryokuText p{
 padding-bottom: 8px;
 line-height: 2.2;
}

a.miryokuLink{
  align-self: flex-end;
 display: flex;
  align-items: center;
  justify-content: center;
 width: 100%;
 max-width: 300px;
 height: 64px;
 margin-top: auto;
 text-decoration: none;
 background: var(--main-green);
 border-radius: 32px;
}

a.miryokuLink:link{ color: #fff;}
a.miryokuLink:visited{ color: #fff;}
a.miryokuLink:hover{}

/*------------------------------ 出来る事（大） */
.miryoku{
 display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
 width: 100%;
 max-width: 1280px;
 margin-bottom: 16px;
}

.miryokuMain{
 position: relative;
 display: flex;
  flex-direction: column;
 width: 53%;
 max-width: 669px;
}

/*-----*/
.miryokuImage{
 position: relative;
 width: 45%;
 max-width: 570px;
}

.miryokuImage figcaption{}
.miryokuImage figcaption img{ width: 100%; max-width: 498px;}

.miryokuImage > img:not([class]){
 width: 100%;
 border-radius: 50%;
}

/*-------------------- 出来る事（大・個別処理） */
.miryoku.miryoku01{
  flex-direction: row-reverse;
}

.miryoku.miryoku02{ margin-bottom: 28px; margin-left: auto;}

.miryoku01 .miryokuMain{ padding-top: 96px;}
.miryoku02 .miryokuImage{ padding-top: 48px;}

.bg_deco_wave02-pink{
 height: 56px;
 margin-bottom: 45px;
 background: url("../images/bgdeco/deco_wave02-pink.png") repeat-x center center / auto;
 border: none;
}

.bg_deco_wave02-skyblue{
 height: 56px;
 margin-bottom: 45px;
 background: url("../images/bgdeco/deco_wave02-skyblue.png") repeat-x center center / auto;
 border: none;
}

/*----- 改行処理 */
.miryoku01 .miryokuText br.u-br01{}
.miryoku01 .miryokuText br.u-br02{}
.miryoku01 .miryokuText br.u-br03{}
.miryoku01 .miryokuText br.u-br04{}

.miryoku02 .miryokuText br.u-br01{}

/*----- デコイラスト */
img.miryoku01--deco01{
 position: absolute; top: 116px; right: 72px; z-index: -1;
 transform: rotate(15deg);
}

img.miryoku01--deco02{
 position: absolute; top: 5px; right: 10px; z-index: 1;
}


img.miryoku02--deco01{
 position: absolute; bottom: -72px; left: 36px; z-index: -1;
}

img.miryoku02--deco02{
 position: absolute; top: -26px; left: -2px; z-index: 1;
}

/*-----*/
.miryoku01 .miryokuImage figcaption{
 position: absolute; bottom: 0; left: 0;
}

.miryoku02 .miryokuImage figcaption{
 position: absolute; bottom: 0; right: 0;
}

/*------------------------------ 出来る事（ミニ） */
.sec-miryoku_miniZone{
 display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
 margin-bottom: 16px;
}

.miryoku_mini{
 display: flex;
  flex-direction: column;
 width: 49.5%;
 max-width: 624px;
 margin-bottom: 32px;
}

.miryoku_mini .miryokuText p{ padding-bottom: 16px;}

.miryoku_mini figure{
 display: flex;
  flex-wrap: wrap;
}

.miryoku_mini figure img{ margin-bottom: 6px; margin-right: 6px;}

.miryoku_mini a.miryokuLink{ align-self: center;}


/*============================== □ max-width xxx */
@media screen and (max-width: 1240px){
/*-------------------- 出来る事（大・個別処理） */
/*----- 改行処理 */
.miryoku01 .miryokuText br.u-br01{}
.miryoku01 .miryokuText br.u-br02{}
.miryoku01 .miryokuText br.u-br03{ display: none;}
.miryoku01 .miryokuText br.u-br04{ display: none;}

.miryoku02 .miryokuText br.u-br01{}

}/*----- media -----*/

/*============================== ■ max-width 1087 */
@media screen and (max-width: 1087px){
.sec-miryokuWhole h2{
 width: 100%;
 max-width: 640px;
 margin-bottom: 54px;
 margin-left: auto;
 margin-right: auto;
 font-size: 42px;
}

/*------------------------------ 出来る事（共通パーツ） */
.miryokuTitle{
 min-height: calc(198px * 0.8);
 margin-bottom: 20px;
 padding-left: 36px;
 font-size: 28px;
 background: url("../images/bgdeco/deco_star01.png") no-repeat center left / calc(416px * 0.8);
}

.miryokuText{ margin-bottom: 40px; padding-left: 36px;}

/*------------------------------ 出来る事（大） */
.miryoku.miryoku01,
.miryoku.miryoku02{ margin-bottom: 28px;}

.miryokuMain{
 display: flex;
  flex-direction: column;
 width: 100%;
 max-width: 640px;
 margin-bottom: 32px;
}

.miryokuImage{
 width: 100%;
 max-width: 420px;
}

/*-------------------- 出来る事（大・個別処理） */
.miryoku,
.miryoku.miryoku01{
  align-items: center;
  flex-direction: column;
}

.miryoku01 .miryokuMain{ padding-top: 0px;}
.miryoku02 .miryokuImage{ padding-top: 0px;}

a.miryokuLink{
  align-self: center;
}

.bg_deco_wave02-pink{
 height: calc(56px * 0.7);
 margin-bottom: 45px;
 background: url("../images/bgdeco/deco_wave02-pink.png") repeat-x center center / calc(1920px * 0.
7);
}

.bg_deco_wave02-skyblue{
 height: calc(56px * 0.7);
 margin-bottom: 45px;
 background: url("../images/bgdeco/deco_wave02-skyblue.png") repeat-x center center / calc(1920px * 
0.7);
}

/*----- 改行処理 */
.miryoku01 .miryokuText br.u-br01{}
.miryoku01 .miryokuText br.u-br02{ display: none;}
.miryoku01 .miryokuText br.u-br03{ display: none;}
.miryoku01 .miryokuText br.u-br04{ display: none;}

.miryoku02 .miryokuText br.u-br01{}

/*----- デコイラスト */
img.miryoku01--deco01{
 position: absolute; top: 0px; right: 72px; z-index: -1;
 transform: rotate(15deg);
}


img.miryoku02--deco01{
 position: absolute; bottom: auto; left: auto; top: 10px; right: 27px; z-index: -1;
 width: calc(187px * 0.8);
}

img.miryoku02--deco02{
 position: absolute; top: -26px; left: -2px; z-index: 1;
 width: calc(182px * 0.8);
}

}/*----- media -----*/

/*============================== ■ max-width 767 */
@media screen and (max-width: 767px){
/*------------------------------ 出来る事（共通パーツ） */
.miryokuTitle{
 width: fit-content;
 min-height: calc(198px * 0.5);
 margin-bottom: 8px;
 padding-left: 0px;
 font-size: 28px;
 background: url("../images/bgdeco/deco_star01.png") no-repeat center left / calc(416px * 0.5);
}

.miryokuText{ margin-bottom: 24px; padding-left: 0px;}

/*-------------------- 出来る事（大・個別処理） */
/*----- 改行処理 */
.miryoku02 .miryokuText br.u-br01{ display: none;}

/*----- デコイラスト */
img.miryoku01--deco01{
 position: absolute; top: -0px; right: 20%; z-index: -1;
 width: calc(107px * 0.6);
}

img.miryoku01--deco02{
 position: absolute; top: 5px; right: 0px; z-index: 1;
}

img.miryoku02--deco01{
 position: absolute; bottom: auto; left: auto; top: 12px; right: 8%; z-index: -1;
 width: calc(187px * 0.6);
}

/*------------------------------ 出来る事（ミニ） */
.sec-miryoku_miniZone{
 display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: flex-start;
 margin-bottom: 12px;
}

.miryoku_mini{
 display: flex;
  flex-direction: column;
 width: 100%;
 max-width: 580px;
 margin-bottom: 32px;
}

}/*----- media -----*/

/*============================== ■ max-width 520 */
@media screen and (max-width: 520px){
/*-------------------- 出来る事（大・個別処理） */
/*----- 改行処理 */
.miryoku01 .miryokuText br.u-br01{ display: none;}
.miryoku01 .miryokuText br.u-br02{ display: none;}
.miryoku01 .miryokuText br.u-br03{ display: none;}
.miryoku01 .miryokuText br.u-br04{ display: none;}

/*----- デコイラスト */
img.miryoku01--deco01{ display: none;}
img.miryoku01--deco02{
 position: absolute; top: 0px; right: 0px; z-index: 1;
 width: calc(68px * 0.8);
}

img.miryoku02--deco01{ display: none;}
img.miryoku02--deco02{
 position: absolute; top: -12px; left: -2px; z-index: 1;
 width: calc(182px * 0.6);
}
}/*----- media -----*/

/*========================================
　●　その他の特徴
========================================*/
.sec-othertokucho{
 padding-top: 24px;
 padding-bottom: 24px;
 background: var(--main-cream);
}

.sec-othertokucho h4{
 padding-bottom: 24px;
 font-family: 'Kiwi Maru','Noto Sans JP', sans-serif;
 font-size: 32px;
 line-height: 1.3;
 text-align: center;
}

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

.othertokuchoWrap > div{
 width: calc(50% - 20px);
}

.othertokuchoWrap details{
 margin-bottom: 24px;
 padding: 0.5em 1.0em 0.5em 1.0em;
 background: #fff;
 border: 2px solid var(--main-skyblue);
 border-radius: 8px;
}

.othertokuchoWrap details summary{
 position: relative;
 display: block;
 padding-top: 4px;
 padding-bottom: 4px;
 padding-right: 24px;
 line-height: 1.5;
}
summary::-webkit-details-marker {/* Safari対策 */
 display: none;
}
.othertokuchoWrap details .detailsNaiyo{
 margin-top: 0.5em;
 padding-top: 0.75em;
 padding-bottom: 0.5em;
 border-top: 2px dotted var(--main-skyblue);
}

.othertokuchoWrap details .detailsNaiyo p{ line-height: 1.5;}

/* hover,open時アニメーション */
.othertokuchoWrap summary:hover{ cursor: pointer;}

.othertokuchoWrap details[open] .detailsNaiyo{
  animation: ani-fadeIn 0.6s ease;
}

.othertokuchoWrap details .detailsClose{
 position: absolute; right: 0em; top: 6px;
 transition: all 0.2s ease-out;
}
.othertokuchoWrap details[open] .detailsClose{ transform: rotate(45deg);}

@keyframes ani-fadeIn{
0%{
 opacity: 0;
}
100%{
 opacity: 1;
 transform: none;
}
}/*----- @keyframes -----*/

/*============================== ■ max-width 1087 */
@media screen and (max-width: 1087px){}/*----- media -----*/

/*============================== ■ max-width 767 */
@media screen and (max-width: 767px){
/*----------*/
.othertokuchoWrap{
 display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.othertokuchoWrap > div{
 width: 100%;
}

}/*----- media -----*/

/*============================== ■ max-width 520 */
@media screen and (max-width: 520px){}/*----- media -----*/

/*========================================
　●　スライド調整
========================================*/
.splide__arrow{
 width: 4em; height: 4em;
 background: rgba(255,255,255,0.8);
}

/*============================== ■ max-width 1087 */
@media screen and (max-width: 1087px){}/*----- media -----*/

/*============================== ■ max-width 767 */
@media screen and (max-width: 767px){
.splide__arrow{
 width: 3em; height: 3em;
}

.splide__arrow--prev{ left: 0.5em;}
.splide__arrow--next{ right: 0.5em;}

}/*----- media -----*/

/*============================== ■ max-width 520 */
@media screen and (max-width: 520px){
.splide__arrow{
 width: 2em; height: 2em;
}

.splide__arrow--prev{ left: 0.5em;}
.splide__arrow--next{ right: 0.5em;}

}/*----- media -----*/

