/*--基本フォント指定--*/

body,
p,
li,
table,
th,
td,
figcaption {
    font-family: "メイリオ", "Mayryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

/*--リュウミンレギュラーが必要な場合--*/

.font-ryumin {
    font-family: "Ryumin Regular KL", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "typesquare" !important;
}

/*--アンカーリンクの余白調整--*/
#content01,
#content02,
#content03,
#content04 {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

@media screen and (max-width:768px) {

    #content01,
    #content02,
    #content03,
    #content04 {
        padding-top: 80px;
        margin-top: -80px;
    }
}

@media screen and (max-width:768px) {

    #content01 {
        padding-top: 120px;
        margin-top: -120px;
    }
}

/*汎用クラス（Jimdo機能側での余白など調整用）*/

.t-margin5 {
    margin-top: 5px;
}

.t-margin10 {
    margin-top: 10px;
}

.t-margin15 {
    margin-top: 15px;
}

.t-margin20 {
    margin-top: 20px;
}

.b-margin10 {
    margin-bottom: 10px;
}

.b-margin15 {
    margin-bottom: 15px;
}

.b-margin20 {
    margin-bottom: 20px;
}

a[href^="tel:"] {
    pointer-events: none;
}

@media screen and (max-width:768px) {
    a[href^="tel:"] {
        pointer-events: auto;
    }
}

.m-off {
    display: block;
}

.m-on {
    display: none;
}

@media screen and (max-width:768px) {
    .m-off {
        display: none;
    }

    .m-on {
        display: block;
    }
}

.j-table table {
    border-collapse: collapse;
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

.j-table table th,
.j-table table td {
    border-bottom: 1px solid #CCC;
    border-right: 1px solid #CCC;
    padding: 15px 20px;
    vertical-align: top;
}

.j-table table th {
    background-color: #EBF6F7;
    font-weight: bold;
}

.j-table table.table-type02 {
    border-left: none;
}

.j-table table.table-type02 th,
.j-table table.table-type02 td {
    border-right: none;
}

.j-table table.table-type02 th {
    vertical-align: middle;
    font-weight: bold;
}

@media screen and (max-width:768px) {
    .j-table table.table-type02 tr {
        display: flex;
        flex-direction: column;
    }

    .j-table table.table-type02 th,
    .j-table table.table-type02 td {
        width: auto;
    }

    .j-table table.table-type02 th {
        vertical-align: top;
        text-align: left !important;
    }
}

.j-table table.topic-box {
    border-top: none;
    border-left: none;
}

.j-table table.topic-box th,
.j-table table.topic-box td {
    padding: 30px 2px;
    border-right: none;
}

.j-table table.topic-box tr:nth-child(1) th,
.j-table table.topic-box tr:nth-child(1) td {
    padding-top: 0;
}

.j-calltoaction-link.j-calltoaction-link-style-1 {
    padding: 11px 27px !important;
    font-size: 16px !important;
    font-weight: bold;
    color: #FFF !important;
    background-color: #00A3AF !important;
    border: 2px solid #00A3AF !important;
    border-radius: 5px;
}

.j-calltoaction-link.j-calltoaction-link-style-2 {
    padding: 11px 27px !important;
    font-size: 16px !important;
    font-weight: bold;
    color: #00A3AF !important;
    background-color: #FFF !important;
    border: 2px solid #00A3AF !important;
    border-radius: 5px;
}

.j-calltoaction-link.j-calltoaction-link-style-3 {
    padding: 11px 27px !important;
    font-size: 16px !important;
    font-weight: bold;
    color: #FFF !important;
    background-color: #215968 !important;
    border: 2px solid #215968 !important;
    border-radius: 5px;
}

.j-calltoaction-link {
    transition: 0.6s;
    line-height: 150% !important;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.j-calltoaction-link.j-calltoaction-link-style-1:hover {
    opacity: 0.6;
}

.j-calltoaction-link.j-calltoaction-link-style-2:hover {
    background-color: #EBF6F7 !important;
}

.j-calltoaction-link.j-calltoaction-link-style-3:hover {
    opacity: 0.6;
}

.j-module a {
    text-decoration: underline;
    color: #215968;
    transition: 0.3s;
}

.j-module a:hover {
    text-decoration: underline;
    opacity: 0.6;
}

/*--強調のスタイルが必要な場合コメントアウト外してください
.j-module strong {
    color: #00A3AF;
}

@media screen and (max-width:768px) {
    .j-module strong {
        color: #000;
    }
}
--*/

div.j-module ul {
    padding-left: 2.5em !important;
    padding-inline-start: 23px !important;
}

div.j-module ol {
    padding-left: 2em !important;
    padding-inline-start: 15px !important;
}

div.j-module ol li {
    right: -0.6em !important;
}

div.j-module ul li {
    right: 0.1em !important;
}

div.j-module ul li {
    padding-left: 10px;
}

div.j-module ol li {
    padding-left: 8px !important;
}

div.j-module ul li::marker {
    content: "● ";
    font-size: 16px;
    color: #00A3AF;
}

/*--水平線スタイル変更--*/

.j-hr div.hr {
    border-bottom-style: solid !important;
    border-bottom-width: 2px !important;
    border-color: #00A3AF !important;
    height: 1px;
}

/*--背景や枠つきのテキストボックスが必要な場合に使用--*/
.txt-box01 {
    width: 100%;
    margin: 0;
    padding: 23px;
    border: 2px solid #00A3AF;
    border-radius: 10px;
    box-sizing: border-box;
}

div.j-module .txt-box01 ol,
div.j-module .txt-box01 ul {
    padding-left: 1em !important;
}

div.j-module .txt-box01 ul li {
    right: -0.5em !important;
}

/*clearfix*/

.clearfix:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
}

/*--カラム部分など--*/

@media screen and (max-width:768px) {
    .cc-m-hgrid-column {
        width: 100% !important;
        float: none !important;
        box-sizing: border-box;
    }
}

/*  Layout
----------------------------------------------- */

img {
    max-width: 100% !important;
    height: auto !important;
    margin: 0;
    padding: 0;
    border: none;
    vertical-align: top;
    backface-visibility: hidden;
}

figure {
    max-width: 100% !important;
    height: auto;
}

figure img {
    max-width: 100% !important;
    height: auto !important;
    margin: 0;
    padding: 0;
    border: none;
    backface-visibility: hidden;
}

/*--
img {
    width: 100%;
    height: auto !important;
    margin: 0;
    padding: 0;
    border: none;
    vertical-align: top;
    backface-visibility: hidden;
}

figure {
    width: 100%;
    height: auto;
}

figure img {
    width: 100%;
    height: auto !important;
    margin: 0;
    padding: 0;
    border: none;
    backface-visibility: hidden;
}
--*/

a img {
    background-color: transparent;
    -moz-transition: 0.3s;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

a:hover img {
    filter: alpha(opacity=65);
    opacity: 0.65;
}

#lb-container img {
    max-width: none !important;
    width: auto;
    height: auto;
}

.cc-map-canvas img {
    max-width: none !important;
}

body {
    background: #FFF;
    padding: 0;
    margin: 0;
    position: relative;
    overflow-x: hidden;
}

#cc-inner {
    overflow: hidden;
}

.wrapper {
    position: relative;
}

/*--ヘッダ--*/

header {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #FFF;
    position: relative;
}

#header-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 25px 30px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 150;
    box-sizing: border-box;
}

#header-inner #header-left {
    width: 50%;
    max-width: 150px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

#header-left h1 {
    margin: 0;
    padding: 0;
    display: block;
    box-sizing: border-box;
}

#header-pc-nav-top,
#header-pc-nav-sub {
    width: auto;
    margin: 0px 0px 0px auto;
    box-sizing: border-box;
}

#header-pc-nav-top {
    display: none;
}

.cc-page-index #header-pc-nav-top {
    display: block;
}

.cc-pagemode-notfound #header-pc-nav-top,
.cc-pagemode-overlay #header-pc-nav-top,
.cc-pagemode-sitetemplate #header-pc-nav-top {
    display: none !important;
}

#header-pc-nav-sub {
    display: block;
}

.cc-page-index #header-pc-nav-sub {
    display: none;
}

.cc-pagemode-notfound #header-pc-nav-sub,
.cc-pagemode-overlay #header-pc-nav-sub,
.cc-pagemode-sitetemplate #header-pc-nav-sub {
    display: block !important;
}

.header-pc-nav {
    width: auto;
    margin: 0px 0px 0px auto;
    padding: 0px 15px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

.header-pc-nav > a {
    display: block;
    text-decoration: none !important;
    color: #215968 !important;
    font-size: 18px;
    font-weight: bold;
    line-height: 150%;
    margin: 0;
    padding: 0px 30px;
    background: url(https://u.jimcdn.com/cms/o/sc91e2b3cc67bb2f6/userlayout/img/g-nav-lm01.png?t=1695954640) right center no-repeat;
    background-size: 18px;
    white-space: nowrap;
    box-sizing: border-box;
    transition: 0.3s;
}

.header-pc-nav > a:hover {
    text-decoration: none !important;
    opacity: 0.6;
}

.menu-sw {
    display: none;
}

#navigation-m {
    display: none;
}

#contents-over {
    display: none;
}

#s-menu-m {
    display: none;
}

@media screen and (min-width:769px) {
    #navigation-m {
        display: none !important;
    }
}

@media screen and (max-width:860px) {
    .header-pc-nav a {
        font-size: 16px;
    }

}

@media screen and (max-width:768px) {
    header {
        position: fixed;
        top: 0;
        z-index: 11000;
        box-sizing: border-box;
    }

    #header-inner {
        padding: 20px;
    }

    #header-inner #header-left {
        width: 80%;
        max-width: 120px;
        box-sizing: border-box;
    }

    .header-pc-nav {
        display: none;
    }

    .menu-sw {
        width: 40px;
        height: 40px;
        margin: 0px 0px 0px auto;
        padding: 0;
        background-color: #00A3AF;
        position: relative;
        display: block;
        cursor: pointer;
        box-sizing: border-box;
        border-radius: 5px;
        z-index: 11001;
    }

    #navigation-m {
        width: 100%;
        position: fixed;
        padding: 0;
        top: 80px;
        left: 0px;
        bottom: 100px;
        display: none;
        z-index: 10500;
        overflow-y: auto;
        overflow-x: hidden;
        box-sizing: border-box;
    }

    #navigation-m::-webkit-scrollbar {
        width: 5px;
    }

    #navigation-m::-webkit-scrollbar-track {
        border-radius: 10px;
        box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
    }

    #navigation-m::-webkit-scrollbar-thumb {
        background-color: rgba(30, 80, 162, 0.2);
        border-radius: 10px;
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
    }

    #m-nav-wrap {
        width: 100%;
        padding: 0;
        border-radius: 0px;
        background-color: #FFF;
        position: relative;
        box-sizing: border-box;
        z-index: 10600;
    }

    .menu-sw01 {
        width: 24px;
        height: 3px;
        background-color: #FFF;
        position: absolute;
        top: 15px;
        right: 8px;
    }

    .menu-sw02 {
        width: 24px;
        height: 3px;
        background-color: #FFF;
        position: absolute;
        top: 24px;
        right: 8px
    }

    .menu-sw01,
    .menu-sw02 {
        transition: all 0.5s ease-out;
        -o-transition: all 0.5s ease-out;
        -moz-transition: all 0.5s ease-out;
        -webkit-transition: all 0.5s ease-out;
        -ms-transition: all 0.5s ease-out;
    }

    .menu-open01 {
        top: 19px;
        -moz-transform: rotate(405deg);
        -webkit-transform: rotate(405deg);
        -o-transform: rotate(405deg);
        -ms-transform: rotate(405deg);
        transform: rotate(405deg);
    }

    .menu-open02 {
        top: 19px;
        -moz-transform: rotate(-405deg);
        -webkit-transform: rotate(-405deg);
        -o-transform: rotate(-405deg);
        -ms-transform: rotate(-405deg);
        transform: rotate(-405deg);
    }

    #contents-over {
        width: 100vw;
        height: 100%;
        margin: 0;
        padding: 0;
        background-color: transparent;
        border-radius: 0px;
        position: absolute;
        top: 0;
        left 0;
        z-index: 10400;
    }

    #contents-over02 {
        width: 100vw;
        height: 100%;
        margin: 0;
        padding: 0;
        background-color: transparent;
        border-radius: 0px;
        position: absolute;
        cursor: pointer;
        top: 0;
        left 0;
        z-index: 10550;
    }

}

/*--ヘッダここまで--*/

/*--グローバルナビ--*/

#g-nav-wrap {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
    box-sizing: border-box;
    position: relative;
    border-bottom: 1px solid #EBF6F7;
    z-index: 11100;
}

.cc-pagemode-default #g-nav-wrap,
.cc-pagemode-notfound #g-nav-wrap,
.cc-pagemode-overlay #g-nav-wrap,
.cc-pagemode-sitetemplate #g-nav-wrap {
    display: none;
}

#g-nav-head {
    width: 100%;
    margin: 0;
    padding: 15px;
    font-size: 20px;
    font-weight: bold;
    color: #FFF;
    background-color: #00A3AF;
    text-align: center;
    display: block;
    box-sizing: border-box;
}

/*--Gナビ1層目--*/

#g-nav01 {
    width: 100%;
    max-width: 1060px;
    margin: 0 auto;
    padding: 30px;
    background: #FFF;
    box-sizing: border-box;
}

#g-nav01 ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#g-nav01 ul.mainNav1 {
    width: auto;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#g-nav01 ul.mainNav1 > li {
    border-left: 1px solid #E6E3DC;
}

#g-nav01 ul.mainNav1 > li:nth-child(1) {
    border: none;
}

#g-nav01 ul.mainNav1 > li > a {
    width: auto;
    display: block;
    margin: 0;
    padding: 0px 30px;
    color: #000;
    font-size: 18px;
    font-family: "メイリオ", "Mayryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
    line-height: 160%;
    text-decoration: none;
    box-sizing: border-box;
    transition: 0.3s;
}

#g-nav01 ul.mainNav1 li a:hover {
    color: #00A3AF;
}

#g-nav01 ul.mainNav1 li a.current,
#g-nav01 ul.mainNav1 li a.parent {
    color: #00A3AF;
}

@media screen and (max-width:1079px) {
    #g-nav01 ul.mainNav1 > li > a {
        padding: 0px 15px;
    }
}

/*--Gナビ2層目--*/

#g-nav02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    background-color: #C1E4E9;
    box-sizing: border-box;
}

#g-nav02 ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#g-nav02 ul.mainNav2 {
    width: auto;
    margin: 0;
    padding: 15px 0px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#g-nav02 ul.mainNav2 > li {
    border-left: 1px solid #999999;
}

#g-nav02 ul.mainNav2 > li:nth-child(1) {
    border: none;
}

#g-nav02 ul.mainNav2 > li > a {
    width: auto;
    display: block;
    margin: 0;
    padding: 0px 40px 0px 40px;
    color: #000;
    font-size: 16px;
    font-family: "メイリオ", "Mayryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
    line-height: 160%;
    text-decoration: none;
    box-sizing: border-box;
    transition: 0.3s;
}

#g-nav02 ul.mainNav2 li a:hover {
    color: #00A3AF;
}

#g-nav02 ul.mainNav2 li a.current,
#g-nav02 ul.mainNav2 li a.parent {
    color: #00A3AF;
}

/*--Gナビ3層目--*/

#g-nav03 {
    width: 100%;
    margin: 0 auto;
    padding: 0px 15px;
    background-color: #EBF6F7;
    box-sizing: border-box;
}

#g-nav03 ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#g-nav03 ul.mainNav3 {
    width: auto;
    margin: 0;
    padding: 15px 0px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#g-nav03 ul.mainNav3 > li {
    border-left: 1px solid #999999;
}

#g-nav03 ul.mainNav3 > li:nth-child(1) {
    border: none;
}

#g-nav03 ul.mainNav3 > li > a {
    width: auto;
    display: block;
    margin: 0;
    padding: 0px 40px 0px 40px;
    color: #000;
    font-size: 16px;
    font-family: "メイリオ", "Mayryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
    line-height: 160%;
    text-decoration: none;
    box-sizing: border-box;
    transition: 0.3s;
}

#g-nav03 ul.mainNav3 li a:hover {
    color: #00A3AF;
}

#g-nav03 ul.mainNav3 li a.current,
#g-nav03 ul.mainNav3 li a.parent {
    color: #00A3AF;
}

/*--スマホからもメニューの編集をする場合には以下のメディアクエリ部分をコメントアウトしてください--*/
@media screen and (max-width:768px) {
    #g-nav-wrap {
        display: none !important;
    }
}

/*--グローバルナビここまで--/

/*--モバイルナビ--*/

#m-nav-top,
#m-nav-sub {
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

#m-nav-top > div,
#m-nav-sub > div {
    margin: 0;
    padding: 0px 5px 20px 5px;
    display: flex;
    align-content: space-around;
}

#m-nav-top > div > a,
#m-nav-sub > div > a {
    width: 50%;
    text-decoration: none !important;
    color: #215968 !important;
    font-size: 16px;
    font-weight: bold;
    line-height: 150%;
    margin: 0px 5px;
    padding: 15px 30px 15px 10px;
    background: url(https://u.jimcdn.com/cms/o/sc91e2b3cc67bb2f6/userlayout/img/g-nav-lm01.png?t=1695954640);
    background-position: right 15px center;
    background-repeat: no-repeat;
    background-size: 18px;
    white-space: nowrap;
    display: block;
    border-bottom: 1px solid #00A3AF;
    box-sizing: border-box;
    transition: 0.3s;
}

#m-nav-top > div > a:hover,
#m-nav-sub > div > a:hover {
    color: rgba(33, 89, 104, 0.6);
}

#m-nav-wrap > .menu-close {
    width: 100%;
    margin: 0;
    padding: 10px 25px;
    font-size: 16px;
    font-weight: bold;
    line-height: 160%;
    text-align: center;
    color: #FFF;
    background-color: #00A3AF;
    text-decoration: none;
    transition: 0.6s;
    cursor: pointer;
    box-sizing: border-box;
}

#m-nav-wrap > .menu-close:hover {
    opacity: 0.6;
}

#m-nav-top {
    display: none;
}

.cc-page-index #m-nav-top {
    display: block;
}

.cc-pagemode-notfound #m-nav-top,
.cc-pagemode-overlay #m-nav-top,
.cc-pagemode-sitetemplate #m-nav-top {
    display: none !important;
}

#m-nav-sub {
    display: block;
}

.cc-page-index #m-nav-sub {
    display: none;
}

.cc-pagemode-notfound #m-nav-sub,
.cc-pagemode-overlay #m-nav-sub,
.cc-pagemode-sitetemplate #m-nav-sub {
    display: block !important;
}

/*--モバイルナビここまで--*/

/*--サイドブロック（編集可能領域込）--*/

.side-bar {
    width: 100%;
    margin: 0;
    padding: 60px 0px 60px 0px;
    background-color: #EEE;
    box-sizing: border-box;
}

.side-bar .side-edit {
    width: 98%;
    max-width: 1010px;
    margin: 0 auto;
    padding: 0;
}

.cc-pagemode-default .side-bar,
.cc-pagemode-notfound .side-bar,
.cc-pagemode-overlay .side-bar,
.cc-pagemode-sitetemplate .side-bar {
    display: none;
}

/*--サイドブロック（編集可能領域込）ここまで--*/

/*--メインイメージ部--*/

#main-img {
    display: none;
}

.cc-page-index #main-img {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0px 30px;
    display: block;
    box-sizing: border-box;
    position: relative;
    z-index: 20;
}

.cc-pagemode-notfound #main-img,
.cc-pagemode-overlay #main-img,
.cc-pagemode-sitetemplate #main-img {
    display: none !important;
}

.cc-page-index #main-img img {
    border-radius: 10px;
}

@media screen and (max-width:768px) {
    .cc-page-index #main-img {
        margin-top: 80px;
        padding: 0px 10px;
    }
}

/*--メインイメージ部ここまで--*/

/*--メインイメージ下のテキスト--*/

#main-txt {
    display: none;
}

.cc-page-index #main-txt {
    width: 100%;
    margin: -60px 0px 0px 0px;
    padding: 102px 20px 48px 20px;
    background: #EBF6F7;
    display: block;
    position: relative;
    z-index: 10;
    box-sizing: border-box;
}

.cc-pagemode-notfound #main-txt,
.cc-pagemode-overlay #main-txt,
.cc-pagemode-sitetemplate #main-txt {
    display: none !important;
}

#main-txt > p {
    width: auto;
    margin: 0;
    padding: 0;
    font-size: 40px;
    line-height: 160%;
    color: #215968;
    font-family: "Ryumin Regular KL", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "typesquare" !important;
    text-align: center;
}

#main-txt > div {
    width: auto;
    max-width: 370px;
    margin: 20px auto 0px auto;
    padding: 0;
    box-sizing: border-box;
}

#main-txt > div > p {
    width: auto;
    margin: 0;
    padding: 0;
    font-size: 15px;
    line-height: 160%;
    color: #215968;
    text-align: center;
}

@media screen and (max-width:768px) {
    .cc-page-index #main-txt {
        padding: 90px 20px 60px 20px;
    }

    #main-txt > p {
        font-size: 22px;
    }

    #main-txt > div > p {
        max-width: 270px;
        margin: 0 auto;
        font-size: 14px;
        font-feature-settings: "palt";
    }
}

@media screen and (max-width:510px) {
    #main-txt > p {
        font-feature-settings: "palt";
    }

    #main-txt > p:nth-child(2) {
        max-width: 250px;
        margin: 0 auto;
    }
}

/*--メインイメージ下のテキストここまで--*/

/*--全体のラッピング--*/

#container {
    width: 100%;
    margin: 0 auto;
    padding: 35px 0px 0px 0px;
}

.cc-page-index #container {
    padding-top: 55px;
}

.cc-pagemode-notfound #container,
.cc-pagemode-overlay #container,
.cc-pagemode-sitetemplate #container {
    padding-top: 35px !important;
}

@media screen and (max-width:768px) {
    #container {
        padding-top: 35px;
    }

    .cc-page-index #container {
        padding-top: 35px;
    }

    .cc-pagemode-notfound #container,
    .cc-pagemode-overlay #container,
    .cc-pagemode-sitetemplate #container {
        padding-top: 35px !important;
    }
}

/*--ページタイトル部--*/
#page-title {
    width: 100%;
    margin: 0;
    padding: 32px 25px;
    font-size: 40px;
    color: #215968;
    line-height: 160%;
    font-family: "Ryumin Regular KL", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "typesquare" !important;
    text-align: center;
    background: #EBF6F7;
    display: block;
    box-sizing: border-box;
}

.cc-page-index #page-title {
    display: none;
}

.cc-pagemode-notfound #page-title,
.cc-pagemode-overlay #page-title,
.cc-pagemode-sitetemplate #page-title {
    display: block !important;

}

@media screen and (max-width:768px) {
    #page-title {
        margin-top: 80px;
        padding: 25px;
        font-size: 28px;
    }
}

/*--パンくず部--*/

#bc-outer {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
    box-sizing: border-box;
    background: #FFF;
}

.cc-page-index #bc-outer {
    display: none;
}

.cc-pagemode-notfound #bc-outer,
.cc-pagemode-overlay #bc-outer,
.cc-pagemode-sitetemplate #bc-outer {
    display: block !important;
}

#bc-inner {
    width: 98%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0;
    display: block;
    box-sizing: border-box;
}

#breadcrumb {
    width: 100%;
    margin: 0;
    padding: 10px 5px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    box-sizing: border-box;
}

#breadcrumb a.home-link {
    width: auto;
    padding: 0 20px 0 0;
    color: #215968;
    background: url(https://u.jimcdn.com/cms/o/sc91e2b3cc67bb2f6/userlayout/img/bc-slash.png?t=1695954646) center right no-repeat;
    background-size: calc(19px / 3);
    font-size: 14px;
    transition: 0.6s;
    float: none;
}

#breadcrumb ol {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: flex-end;
}

#breadcrumb ol li {
    float: none;
    margin: 0;
    font-size: 14px;
    color: #333;
}

#breadcrumb ol li a {
    padding: 0 20px 0 0;
    margin-left: 14px;
    color: #215968;
    background: url(https://u.jimcdn.com/cms/o/sc91e2b3cc67bb2f6/userlayout/img/bc-slash.png?t=1695954646) center right no-repeat;
    background-size: calc(19px / 3);
    font-size: 14px;
    transition: 0.6s;
}

#breadcrumb ol li a.cc-nav-current {
    text-decoration: none;
    color: #333;
    background: none;
}

#breadcrumb a.home-link:hover,
#breadcrumb ol li a:hover {
    opacity: 0.6;
    text-decoration: none;
}

/*--コンテンツなど--*/

#content {
    width: 95%;
    max-width: 1010px;
    margin: 0 auto;
    padding: 0px 0px 95px 0px;
    display: block;
    box-sizing: border-box;
}

/*--見出し--*/

.j-header {
    position: relative;
}

.j-header h1 {
    width: auto;
    line-height: 160% !important;
    padding: 15px 20px;
    margin: 0;
    font-family: "Ryumin Regular KL", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "typesquare" !important;
    text-align: left;
    display: block;
    border-left: 4px solid #00A3AF;
    box-sizing: border-box;
    position: relative;
}

.j-header h2 {
    width: auto;
    line-height: 160% !important;
    padding: 9px 15px;
    margin: 0;
    background-color: #C1E4E9;
    text-align: left;
    display: block;
    box-sizing: border-box;
}

/*--見出しここまで--*/

/*--トップへ戻るボタンのスタイルハック--*/

.cc-FloatingButtonBarContainer {
    right: 30px !important;
    bottom: 30px !important;
}

.cc-FloatingButtonBarContainer li a {
    background: #00A3AF !important;
    border-radius: 100px !important;
    border: none !important;
    cursor: pointer;
    font-size: 0;
    overflow: hidden;
}

.cc-FloatingButtonBarContainer li a:hover {
    opacity: 0.6;
}

.cc-FloatingButtonBarContainer .cc-FloatingButtonBarContainer-button-scroll span {
    width: 50px;
    height: 50px;
    background: url(https://u.jimcdn.com/cms/o/sc91e2b3cc67bb2f6/userlayout/img/to-top.png?t=1695954594) center center repeat-y !important;
    background-size: 50px !important;
    opacity: 1.0;
}

@media screen and (max-width:768px) {
    .cc-FloatingButtonBarContainer {
        right: 15px !important;
        bottom: 15px !important;
    }
}

/*--トップへ戻るボタンここまで--*/

/*--お問い合わせページへのリンク--*/
.bottom-contact {
    width: 100%;
    margin: 0;
    padding: 40px 0px;
    background-color: #EBF6F7;
    display: block;
    box-sizing: border-box;
}

.bottom-contact > a {
    width: 95%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px;
    text-align: center;
    color: #00A3AF !important;
    background-color: #FFF;
    border: 2px solid #00A3AF;
    border-radius: 10px;
    text-decoration: none !important;
    display: block;
    box-sizing: border-box;
    transition: 0.6s;
}

.bottom-contact > a > span {
    display: block;
    text-align: center;
    line-height: 150%;
}

.bottom-contact > a > span:nth-child(1) {
    font-size: 30px;
    font-family: "Ryumin Regular KL", "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "typesquare" !important;
}

.bottom-contact > a > span:nth-child(2) {
    font-size: 16px;
    font-weight: bold;
}

.bottom-contact > a:hover {
    opacity: 0.6;
}

@media screen and (max-width:768px) {
    .bottom-contact > a {
        padding: 20px 25px;
    }

    .bottom-contact > a > span:nth-child(1) {
        width: 90%;
        margin: 0 auto;
        font-size: 20px;
    }

    .bottom-contact > a > span:nth-child(2) {
        font-size: 14px;
    }
}

@media screen and (max-width:600px) {
    .bottom-contact > a > span:nth-child(1) {
        max-width: 275px;
    }
}

/*--フッタ--*/

footer {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #C1E4E9;
    box-sizing: border-box;
}

#ft-info {
    width: 100%;
    margin: 0;
    padding: 40px 15px 30px 15px;
    background-color: #FFF;
    box-sizing: border-box;
}

#ft-info h3 {
    width: auto;
    max-width: 150px;
    margin: 0 auto;
    padding: 0;
    display: block;
}

#ft-info > p:nth-child(2) {
    margin: 0;
    padding: 15px;
    font-size: 20px;
    font-weight: bold;
    color: #215968;
    text-align: center;
    line-height: 160%;
}

#ft-info > p:nth-child(3) {
    margin: 0;
    padding: 0px 15px;
    font-size: 16px;
    color: #215968;
    text-align: center;
    line-height: 160%;
}

@media screen and (max-width:768px) {
    #ft-info {
        padding: 40px 15px 40px 15px;
    }

    #ft-info h3 {
        max-width: 120px;
    }

    #ft-info > p:nth-child(2) {
        padding: 10px 15px;
    }

    #ft-info > p:nth-child(4) {
        margin: 0;
        padding: 0px 15px;
        font-size: 14px;
        color: #215968;
        text-align: center;
        line-height: 160%;
    }
}

footer #sys-footer {
    width: 100%;
    margin: 0 auto;
    padding: 25px;
    text-align: center;
    font-size: 14px;
    line-height: 180%;
    color: #215968;
    box-sizing: border-box;
}

footer #sys-footer a:link,
footer #sys-footer a:visited {
    text-decoration: underline;
    color: #215968 !important;
    transition: 0.6s;
}

footer #sys-footer a:active {
    text-decoration: none;
}

footer #sys-footer a:hover {
    opacity: 0.6;
    text-decoration: none;
}

footer #sys-footer a img {
    background-color: transparent;
}

footer #contentfooter {
    font-size: 14px !important;
}

div#contentfooter div.leftrow,
div#contentfooter div.rightrow {
    float: none !important;
    width: 100% !important;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0px !important;
    box-sizing: border-box !important;
}

div#contentfooter div.leftrow {
    text-align: center !important;
    line-height: 200%;
}

div#contentfooter div.rightrow {
    padding: 10px !important;
}

a.jimdo-footer-branding.pull-left {
    text-indent: 2000px !important;
}

.jimdo-free-footer-ad {
    max-width: 1220px;
    margin: 10px auto 0px auto !important;
    box-sizing: border-box;
}

@media screen and (max-width:768px) {
    footer #sys-footer {
        padding: 35px 25px;
        font-size: 13px;
    }

    footer #contentfooter {
        font-size: 13px !important;
    }

    a.jimdo-footer-branding.pull-left {
        text-indent: -2000px !important;
    }

    div#contentfooter div.leftrow {
        text-align: center !important;
    }
}

/*--微調整--*/

#content .j-blogarticle .c {
    display: none;
}

#imprint h2 {
    background: none;
    height: auto;
}

footer .inforow {
    display: none;
}