@charset "utf-8";
/********************************/
/*         スライダー           */
/********************************/
#simplyScroll {
    margin-bottom: 30px;
}
#fadeSlider {
    border: none;
    position: relative;
}
#fadeSlider .flexslider {
    border: none;
}
.cs_wave {
    position: relative;
    margin-bottom: -10px !important;
}
.cs_wave span {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
    font-weight: bold;
}
@media (min-width: 821px) {
.cs_wave span {
   color: var(--setting-background-color);
   text-shadow:/*右 下 影の色をそれぞれ指定*/
        3px 3px 3px #fff/*上*/,   -3px -3px 3px #fff/*右*/,
       -3px 3px 3px #fff/*下*/,    3px -3px 3px #fff/*左*/,
        3px 0px 3px #fff/*左上*/, -3px -0px 3px #fff/*右上*/,
        0px 3px 3px #fff/*右下*/,  0px -3px 3px #fff/*左下*/;
}
.cs_wave span:nth-of-type(1){
    display: block;
    position: absolute;
    font-size: 60px;
    top: 10px;
    left: 20px;
}
.cs_wave span:nth-of-type(2){
    display: block;
    position: absolute;
    font-size: 30px;
    bottom: 60px;
    right: 20px;
}
}
@media (max-width: 820px) {
.cs_wave span {
   color: var(--setting-background-color);
   text-shadow:/*右 下 広がり範囲 影の色をそれぞれ指定*/
        1px 1px 1px #fff/*上*/,   -1px -1px 1px #fff/*右*/,
       -1px 1px 1px #fff/*下*/,    1px -1px 1px #fff/*左*/,
        1px 0px 1px #fff/*左上*/, -1px -0px 1px #fff/*右上*/,
        0px 1px 1px #fff/*右下*/,  0px -1px 1px #fff/*左下*/;
}
.cs_wave span:nth-of-type(1){
    display: block;
    position: absolute;
    font-size: 30px;
    text-align: left;
    top: 5px;
    left: 10px;
}
.cs_wave span:nth-of-type(2){
    display: block;
    position: absolute;
    font-size: 20px;
    text-align: right;
    bottom: 15px;
    right: 10px;
}
}
@media (min-width: 821px) {
.cs_wave {
    height: 700px;
}
.cs_wave p {
    height: 700px;
}
.flexslider .slides img {
    height: 700px;
}
}
@media (max-width: 820px) {
.cs_wave {
    height: 250px;
}
.cs_wave p {
    height: 250px;
}
.flexslider .slides img {
    height: 250px;
}
}
.cs_wave p img {
    object-fit: cover;
}
.cs_wave p {
    margin-top: 0;
    overflow: hidden;
}
.cs_wave::after {
    background: url("../images/waves.svg");
    bottom: 0px;
    content: '';
    position: absolute;
    width: 100%;
    transform: rotate(180deg) translateY(-1px);
}
@media (min-width: 821px) {
.cs_wave::after {
    height: 100px;
}
}
@media (max-width: 820px) {
.cs_wave::after {
    height: 23px;
}
}
/********************************/
/*        ページタイトル        */
/********************************/
main h2 {
    text-align: center;
    border: none !important;
    line-height:1.2;
    margin-bottom: 10px;
}
main h2 small{
    font-weight: normal;
    color: #999;
    border-bottom: solid 1px #999;
}
/********************************/
/*          セクション          */
/********************************/
section {
    margin-top: 25px;
    margin-bottom: 25px;
}
/********************************/
/*         トピックス           */
/********************************/
.cs_attention {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 960px auto;
}
.cs_opacity {
    background-color: rgba(255, 255, 255, 0.5);
    padding: 80px 0;
}
.cs_topics h4 {
    font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.cs_topics p,
.cs_topics h4 {
    line-height: 1.8;
}
.cs_topics strong {
    font-size: calc(var(--setting-font-size) + 0.1rem);
}
.flex1 {
    border: 0;
    border-radius: 20px;
    margin: 0 auto 70px;
}
.cs_attention_img img {
    object-fit: cover;
    border: solid 1px #CCC;
}
.cs_attention_img {
    width: 200px;
}
.cs_attention_img img {
    width: 198px !important;
    height: 150px !important;
}
.cs_attention_text a {
    display: inline-block;
    background-color: var(--setting-background-color);
    padding: 5px 30px;
}
.cs_attention_text a:link,
.cs_attention_text a:visited {
    color: var(--setting-color);
}
@media (min-width: 800px){
.flex1 {
    width: 800px;
    padding: 40px;
}
.cs_attention_flex {
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cs_attention_text {
    width: calc(100% - 220px);
}
}
@media (max-width: 799px){
.flex1 {
    width: 95%;
    padding: 20px 10px;
}
.cs_attention_img {
    margin: 0 auto;
}
.cs_attention_text {
    text-align: center;
}
.flex1 .flex-prev {
    top: 100px;
    margin-left: 0;
}
.flex1 .flex-next {
    top: 100px;
    margin-right: 0;
}
}
.flex1 .flex-prev,
.flex1 .flex-next {
    border-top: solid 20px transparent;
    border-bottom: solid 20px transparent;;
}
.flex1 .flex-prev {
    border-left: solid 20px transparent;
    border-right: solid 20px var(--setting-background-color);
}
.flex1 .flex-prev:hover {
    border-right: solid 20px #999;
}
.flex1 .flex-next {
    border-left: solid 20px var(--setting-background-color);
    border-right: solid 20px transparent;
}
.flex1 .flex-next:hover {
    border-left: solid 20px #999;
}
/********************************/
/*            お知らせ          */
/********************************/
.cs_info >div >div p {
    margin-bottom: 15px;
}
.cs_info >div >div p:last-of-type {
    margin-bottom: 0px;
}
.cs_info >div >div p small {
    white-space:nowrap;
}
.cs_info >div {
    background-color: #EFEFEF;
    padding: 20px;
    border-radius: 20px;
    margin-bottom: 20px;
}
.cs_info_text {
    margin-bottom: 30px;
}
.cs_info_menu {
    padding: 20px;
    border-radius: 20px;
    margin-bottom: 30px;
    background-color: var(--setting-background-color);
}
.cs_info_menu,
.cs_info_menu a:link,
.cs_info_menu a:visited {
    color: var(--setting-color);
}
.cs_info >div >div p {
    font-size: var(--setting-font-size);
}
@media (min-width: 960px) {
.cs_info >div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}
}
/*ウィジェット*/
.cs_info .cs_widget {
    text-align: center;
}
.cs_info .cs_widget iframe {
    width: 300px;
    height: 400px;
}
}
/********************************/
/*           ボタン             */
/********************************/
.cs_top_button {
    text-align: center;
}
.cs_top_button a {
    text-decoration: none;
    display: block;
    text-align: center;
    width: 250px;
    border-radius: 15px;
    margin: 0 auto;
    background-image:url("../images/icon_right.png");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-color: var(--setting-background-color);
}
.cs_top_button a:link,
.cs_top_button a:visited {
    color: var(--setting-color);
}
.cs_top_button a:hover {
    text-decoration: underline;
}
/********************************/
/*          ブロックス          */
/********************************/
.cs_topics2 >div {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}
.cs_topics2 >div >div {
    width: 230px;
    height: 340px;
}
.cs_topics2 table {
    width: 230px;
    height: 340px;
    border-collapse: collapse;
    border: solid 1px #CCC;
}
.cs_topics2 table tr td,
.cs_topics2 table tr th {
    word-break: break-all;
    font-size: calc(var(--setting-font-size) - 0.1rem);
}
.cs_topics2 table tr td a:link,
.cs_topics2 table tr td a:visited {
    color: var(--setting-color);
}
.cs_topics2 table tr td {
    padding: 0 5px;
}
.cs_topics2 table tr td a {
    text-decoration: none;
}
.cs_topics2_img {
    height: 172px;
}
.cs_topics2 .cs_topics2_img img {
    width: 230px;
    height: 172px;
    object-fit: cover;
}
.cs_topics2_txt {
    vertical-align: top;
    height: 70px;
    overflow: hidden;
}
.cs_topics2_button {
    position: relative;
    height: 50px;
}
.cs_topics2_button >a {
    display: block;
    text-decoration: underline !important;
    position: absolute;
    bottom: 10px;
    left: 35px;
    background-color: var(--setting-background-color);
    padding: 5px 30px;

}
.cs_topics2 >div >div {
    margin-bottom: 10px;
}
@media (min-width: 960px) {
.cs_topics2 {
    margin-bottom: 30px;
}
.cs_topics2 >div >div {
    margin-right: 5px;
    margin-left: 5px;
}
}
@media (max-width: 959px) {
.cs_topics2 {
    margin-bottom: 0px;
}
.cs_topics2 >div >div {
    margin-left: auto;
    margin-right: auto;
}
}
@media (max-width: 959px) {
.cs_topics2 >div >div {
    width: 175px;
    height: 340px;
}
.cs_topics2 table {
    width: 100%;
    height: 340px;
}
.cs_topics2 .cs_topics2_img img {
    width: 100%;
    height: 172px;
}
.cs_topics2_button >a {
    /*ボタンの位置を左右中央に*/
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    /*テキスト部分の調整*/
    padding: 5px 10px;
    white-space: nowrap;
}
}
/********************************/
/*           バナー             */
/********************************/
.cs_banner {
    margin-bottom: 30px;
}
.cs_banner >div {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}
.cs_banner >div >div,
.cs_banner img {
    width: 230px;
}
.cs_banner >div >div {
    margin-bottom: 10px;
}
@media (min-width: 960px) {
.cs_banner >div >div {
    margin-right: 5px;
    margin-left: 5px;
}
}
@media (max-width: 959px) {
.cs_banner >div >div {
    margin-left: auto;
    margin-right: auto;
}
}
/********************************/
/*        グーグルマップ        */
/********************************/
.pb_main {
    margin: 0 !important;
    padding: 0 !important;
}
.pb_main .cs_code {
    margin: 0 !important;
    margin-bottom: 50px !important;
    padding: 0 !important;
}
.pb_main .cs_code iframe {
    vertical-align: bottom;
}
