

/********** Base CSS **********/
body,input,textarea,h1,h2,h3,h4{
	font-family: 'Yu Gothic Medium', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-family: "メイリオ", "Meiryo", arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}


/********** フォントの色設定 **********/
.red{ color: #eb3b54; }/*赤*/
.blue{ color: #0329ce; }/*青*/
.green{ color: #01995e; }/*緑*/
.yellow{ color: #ffe400; }/*黄*/
.navy{ color: #133d94; }/*紺*/
.orange{ color: #eca100; }/*橙*/
.pink{ color: #eb67b5; }/*ピンク*/
.purple{ color: #9940d2; }/*紫*/
.olive{ color: #9bb814; }/*オリーブ*/
.lime{ color: #2abe0d; }/*黄緑*/
.aqua{ color: #0baedd; }/*水色*/
.black{ color: #000; }/*黒*/
.gray{ color: #999; }/*灰*/
.white{ color: #fff; }/*白*/
.brown{ color: #4b1c1c; }/*茶*/


/********** 文字光彩 **********/
.shadow_white{
	text-shadow:
    1px 1px 10px #fff,
	-1px 1px 10px #fff,
	1px -1px 10px #fff,
	-1px -1px 10px #fff;
}
.shadow_black{
	text-shadow:
    1px 1px 10px #333,
	-1px 1px 10px #333,
	1px -1px 10px #333,
	-1px -1px 10px #333;
}

/********** 周りのブロックからの距離 **********/
.m0{ margin: 0!important; }/*周りからのmarginを0に*/
.m0-t{ margin-top: 0!important; }/*上からのmarginを0に*/
.m0-r{ margin-right: 0!important; }/*右からのmarginを0に*/
.m0-b{ margin-bottom: 0!important; }/*下からのmarginを0に*/
.m0-l{ margin-left: 0!important; }/*左からのmarginを0に*/

.m5{ margin: 5px!important; }
.m5-t{ margin-top: 5px!important; }
.m5-r{ margin-right: 5px!important; }
.m5-b{ margin-bottom: 5px!important; }
.m5-l{ margin-left: 5px!important; }
.m5--r{ margin-right: -5px!important; }
.m10--r{ margin-right: -10px!important; }
.m20--r{ margin-right: -20px!important; }
.m40--r{ margin-right: -40px!important; }

.m10{ margin: 10px!important; }
.m10-t{ margin-top: 10px!important; }
.m10-r{ margin-right: 10px!important; }
.m10-b{ margin-bottom: 10px!important; }
.m10-l{ margin-left: 10px!important; }

.m15{ margin: 15px!important; }
.m15-t{ margin-top: 15px!important; }
.m15-r{ margin-right: 15px!important; }
.m15-b{ margin-bottom: 15px!important; }
.m15-l{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.m20-t{ margin-top: 20px!important; }
.m20-r{ margin-right: 20px!important; }
.m20-b{ margin-bottom: 20px!important; }
.m20-l{ margin-left: 20px!important; }

.m25{ margin: 25px!important; }
.m25-t{ margin-top: 25px!important; }
.m25-r{ margin-right: 25px!important; }
.m25-b{ margin-bottom: 25px!important; }
.m25-l{ margin-left: 25px!important; }

.m30{ margin: 30px!important; }
.m30-t{ margin-top: 30px!important; }
.m30-r{ margin-right: 30px!important; }
.m30-b{ margin-bottom: 30px!important; }
.m30-l{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.m40-t{ margin-top: 40px!important; }
.m40-r{ margin-right: 40px!important; }
.m40-b{ margin-bottom: 40px!important; }
.m40-l{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.m50-t{ margin-top: 50px!important; }
.m50-r{ margin-right: 50px!important; }
.m50-b{ margin-bottom: 50px!important; }
.m50-l{ margin-left: 50px!important; }

.m60{ margin: 60px!important; }
.m60-t{ margin-top: 60px!important; }
.m60-r{ margin-right: 60px!important; }
.m60-b{ margin-bottom: 60px!important; }
.m60-l{ margin-left: 60px!important; }

.m70{ margin: 70px!important; }
.m70-t{ margin-top: 70px!important; }
.m70-r{ margin-right: 70px!important; }
.m70-b{ margin-bottom: 70px!important; }
.m70-l{ margin-left: 70px!important; }

.m80{ margin: 80px!important; }
.m80-t{ margin-top: 80px!important; }
.m80-r{ margin-right: 80px!important; }
.m80-b{ margin-bottom: 80px!important; }
.m80-l{ margin-left: 80px!important; }

.m90{ margin: 90px!important; }
.m90-t{ margin-top: 90px!important; }
.m90-r{ margin-right: 90px!important; }
.m90-b{ margin-bottom: 90px!important; }
.m90-l{ margin-left: 90px!important; }

.m100{ margin: 100px!important; }
.m100-t{ margin-top: 100px!important; }
.m100-r{ margin-right: 100px!important; }
.m100-b{ margin-bottom: 100px!important; }
.m100-l{ margin-left: 100px!important; }

.m120{ margin: 120px!important; }
.m120-t{ margin-top: 120px!important; }
.m120-r{ margin-right: 120px!important; }
.m120-b{ margin-bottom: 120px!important; }
.m120-l{ margin-left: 120px!important; }

.m150{ margin: 150px!important; }
.m150-t{ margin-top: 150px!important; }
.m150-r{ margin-right: 150px!important; }
.m150-b{ margin-bottom: 150px!important; }
.m150-l{ margin-left: 150px!important; }

.m200{ margin: 200px!important; }
.m200-t{ margin-top: 200px!important; }
.m200-r{ margin-right: 200px!important; }
.m200-b{ margin-bottom: 200px!important; }
.m200-l{ margin-left: 200px!important; }

.m300{ margin: 300px!important; }
.m300-t{ margin-top: 300px!important; }
.m300-r{ margin-right: 300px!important; }
.m300-b{ margin-bottom: 300px!important; }
.m300-l{ margin-left: 300px!important; }


/********** 周りのブロックからの距離（padding） **********/
.p0{ padding: 0!important; }
.p0-t{ padding-top: 0!important; }
.p0-r{ padding-right: 0!important; }
.p0-b{ padding-bottom: 0!important; }
.p0-l{ padding-left: 0!important; }

.p5{ padding: 5px!important; }
.p5-t{ padding-top: 5px!important; }
.p5-r{ padding-right: 5px!important; }
.p5-b{ padding-bottom: 5px!important; }
.p5-l{ padding-left: 5px!important; }

.p10{ padding: 10px!important; }
.p10-t{ padding-top: 10px!important; }
.p10-r{ padding-right: 10px!important; }
.p10-b{ padding-bottom: 10px!important; }
.p10-l{ padding-left: 10px!important; }

.p15{ padding: 15px!important; }
.p15-t{ padding-top: 15px!important; }
.p15-r{ padding-right: 15px!important; }
.p15-b{ padding-bottom: 15px!important; }
.p15-l{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.p20-t{ padding-top: 20px!important; }
.p20-r{ padding-right: 20px!important; }
.p20-b{ padding-bottom: 20px!important; }
.p20-l{ padding-left: 20px!important; }

.p25{ padding: 25px!important; }
.p25-t{ padding-top: 25px!important; }
.p25-r{ padding-right: 25px!important; }
.p25-b{ padding-bottom: 25px!important; }
.p25-l{ padding-left: 25px!important; }

.p30{ padding: 30px!important; }
.p30-t{ padding-top: 30px!important; }
.p30-r{ padding-right: 30px!important; }
.p30-b{ padding-bottom: 30px!important; }
.p30-l{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.p40-t{ padding-top: 40px!important; }
.p40-r{ padding-right: 40px!important; }
.p40-b{ padding-bottom: 40px!important; }
.p40-l{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.p50-t{ padding-top: 50px!important; }
.p50-r{ padding-right: 50px!important; }
.p50-b{ padding-bottom: 50px!important; }
.p50-l{ padding-left: 50px!important; }

.p60{ padding: 60px!important; }
.p60-t{ padding-top: 60px!important; }
.p60-r{ padding-right: 60px!important; }
.p60-b{ padding-bottom: 60px!important; }
.p60-l{ padding-left: 60px!important; }

.p70{ padding: 70px!important; }
.p70-t{ padding-top: 70px!important; }
.p70-r{ padding-right: 70px!important; }
.p70-b{ padding-bottom: 70px!important; }
.p70-l{ padding-left: 70px!important; }

.p80{ padding: 80px!important; }
.p80-t{ padding-top: 80px!important; }
.p80-r{ padding-right: 80px!important; }
.p80-b{ padding-bottom: 80px!important; }
.p80-l{ padding-left: 80px!important; }

.p90{ padding: 90px!important; }
.p90-t{ padding-top: 90px!important; }
.p90-r{ padding-right: 90px!important; }
.p90-b{ padding-bottom: 90px!important; }
.p90-l{ padding-left: 90px!important; }

.p100{ padding: 100px!important; }
.p100-t{ padding-top: 100px!important; }
.p100-r{ padding-right: 100px!important; }
.p100-b{ padding-bottom: 100px!important; }
.p100-l{ padding-left: 100px!important; }

/**********フォントサイズの設定 **********/

.b{ font-weight: bold!important; }
.big{ font-size: 1.2em!important; }
.big2{ font-size: 1.5em!important; }
.big3{ font-size: 1.8em!important; }
.small{ font-size: 0.8em!important; }

.f08em{ font-size: 0.8em!important; }
.f09em{ font-size: 0.9em!important; }
.f10em{ font-size: 1.0em!important; }
.f11em{ font-size: 1.1em!important; }
.f12em{ font-size: 1.2em!important; }
.f13em{ font-size: 1.3em!important; }
.f14em{ font-size: 1.4em!important; }
.f15em{ font-size: 1.5em!important; }
.f16em{ font-size: 1.6em!important; }
.f17em{ font-size: 1.7em!important; }
.f18em{ font-size: 1.8em!important; }
.f19em{ font-size: 1.9em!important; }
.f20em{ font-size: 2.0em!important; }
.f21em{ font-size: 2.1em!important; }
.f22em{ font-size: 2.2em!important; }
.f23em{ font-size: 2.3em!important; }
.f24em{ font-size: 2.4em!important; }
.f25em{ font-size: 2.5em!important; }
.f26em{ font-size: 2.6em!important; }
.f27em{ font-size: 2.7em!important; }
.f28em{ font-size: 2.8em!important; }
.f29em{ font-size: 2.9em!important; }
.f30em{ font-size: 3.0em!important; }

.f08rem{ font-size: 0.8rem!important; }
.f09rem{ font-size: 0.9rem!important; }
.f10rem{ font-size: 1.0rem!important; }
.f11rem{ font-size: 1.1rem!important; }
.f12rem{ font-size: 1.2rem!important; }
.f13rem{ font-size: 1.3rem!important; }
.f14rem{ font-size: 1.4rem!important; }
.f15rem{ font-size: 1.5rem!important; }
.f16rem{ font-size: 1.6rem!important; }
.f17rem{ font-size: 1.7rem!important; }
.f18rem{ font-size: 1.8rem!important; }
.f19rem{ font-size: 1.9rem!important; }
.f20rem{ font-size: 2.0rem!important; }
.f21rem{ font-size: 2.1rem!important; }
.f22rem{ font-size: 2.2rem!important; }
.f23rem{ font-size: 2.3rem!important; }
.f24rem{ font-size: 2.4rem!important; }
.f25rem{ font-size: 2.5rem!important; }
.f26rem{ font-size: 2.6rem!important; }
.f27rem{ font-size: 2.7rem!important; }
.f28rem{ font-size: 2.8rem!important; }
.f29rem{ font-size: 2.9rem!important; }
.f30rem{ font-size: 3.0rem!important; }

.f10px{ font-size: 10px!important; }
.f11px{ font-size: 11px!important; }
.f12px{ font-size: 12px!important; }
.f13px{ font-size: 13px!important; }
.f14px{ font-size: 14px!important; }
.f15px{ font-size: 15px!important; }
.f16px{ font-size: 16px!important; }
.f17px{ font-size: 17px!important; }
.f18px{ font-size: 18px!important; }
.f19px{ font-size: 19px!important; }
.f20px{ font-size: 20px!important; }
.f21px{ font-size: 21px!important; }
.f22px{ font-size: 22px!important; }
.f23px{ font-size: 23px!important; }
.f24px{ font-size: 24px!important; }

/*文字の横位置*/
.al-l{ text-align: left!important; }
.al-r{ text-align: right!important; }
.al-c{ text-align: center!important; }
.al-c-pc{ text-align: center; }
@media (max-width: 767px){
.al-c-pc{ text-align: left; }
}

/*タグ*/
.tag{
	display: inline-block;
	margin-right: 3px;
	margin-bottom: 10px;
	border-radius: 4px;
	background-color: #999;
	color: #fff;
	line-height: 1;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 7px;
	padding-left: 10px;
}

.cat001{
	background-color: #eb3b54!important;
	color: #fff;
}

.cat002{
	background-color: #db8d00!important;
	color: #fff;
}

.cat003{
	background-color: #0baedd!important;
	color: #fff;
}

.cat004{
	background-color: #20a672!important;
	color: #fff;
}

/********** デスクトップとモバイルで表示を振り分け **********/

.show-sp{
	display: none!important;
}
.show-pc{
	display: block!important;
}

@media (max-width: 767.98px) {

.show-sp{
	display: inline!important;
}
.show-pc{
	display: none!important;
}

}

/********** BODY調整 **********/
body {
	line-height: 1.8;
}

/********** リンク見出し調整 **********/
h2 {
	font-size:1.5em;
}

/********** 画像 **********/

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/********** Template CSS **********/
:root {
    --primary: #0329ce;
    --secondary: #0baedd;
    --light: #F6F7FC;
    --dark: #15233C;
}

.back-to-top {
    position: fixed;
    display: none;
    right: 30px;
    bottom: 30px;
    z-index: 99;
}


/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}


/*** Button ***/
.btn {
    transition: .5s;
}

.btn.btn-primary,
.btn.btn-red,
.btn.btn-blue,
.btn.btn-outline-primary:hover,
.btn.btn-secondary,
.btn.btn-outline-secondary:hover {
    color: #FFFFFF;
}

.btn.btn-primary {
    background: var(--primary);
    border-color: var(--primary);
}

.btn.btn-primary:hover {
    background: var(--secondary);
    border-color: var(--secondary);
}

.btn.btn-secondary:hover {
    background: var(--primary);
    border-color: var(--primary);
}

.btn.btn-red {
    background-color: #eb3b54;
    border-color: #eb3b54;
}

.btn.btn-red:hover {
    background-color: #EF667B;
    border-color: #EF667B;
}

.btn.btn-blue {
    background-color: #0329ce;
    border-color: #0329ce;
}

.btn.btn-blue:hover {
    background-color: #3B5EFC;
    border-color: #3B5EFC;
}



.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

/*** 光ボタン（赤） ***/

.r-button._shiny {
    display: block;
    position: relative;
    padding: 1em .5em;
    background-color: #EB3B54;
    box-shadow: 0 3px 0 0 #C43348;
    border-radius: 4px;
	margin:10px auto;
    font-weight: bold;
    font-size: 18px;
	max-width:500px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
  transition: 300ms;
}
.r-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #EAD5D8;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.r-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    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; }
}


/*** 光ボタン（青） ***/

.b-button._shiny {
    display: block;
    position: relative;
    padding: 1em .5em;
    background-color: #0d6efd;
    box-shadow: 0 3px 0 0 #07387C;
    border-radius: 4px;
	margin:10px auto;
    font-weight: bold;
    font-size: 18px;
	max-width:500px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
  transition: 300ms;
}
.b-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #E5EFFC;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.b-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    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; }
}

/*** 光ボタン（緑） ***/

.g-button._shiny {
    display: block;
    position: relative;
    padding: 1em .5em;
    background-color: #00BD00;
    box-shadow: 0 3px 0 0 #006600;
    border-radius: 4px;
	margin:10px auto;
    font-weight: bold;
    font-size: 18px;
	max-width:500px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
  transition: 300ms;
}
.g-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #BFFFBF;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.g-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    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; }
}


/*** Navbar ***/
.navbar.sticky-top {
    top: -100px;
    transition: .5s;
}

.navbar .navbar-brand img {
    max-height: 110px;
}

.navbar .navbar-nav .nav-link {
    margin-left: 25px;
    padding: 10px 0;
    color: #696E77;
    font-weight: 500;
    outline: none;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}

@media (max-width: 991.98px) {
    .navbar .navbar-brand img {
        max-height: 70px;
    }

    .navbar .navbar-nav {
        margin-top: 20px;
        margin-bottom: 15px;
    }

    .navbar .nav-item .dropdown-menu {
        padding-left: 30px;
    }
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        border: none;
        margin-top: 0;
        top: 150%;
        right: 0;
        opacity: 0;
        visibility: hidden;
        transition: .5s;
    }

    .navbar .nav-item:hover .dropdown-menu {
        top: 100%;
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
}


/*** Header ***/
.carousel-caption {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    text-align: start;
    z-index: 1;
}

.carousel-control-prev,
.carousel-control-next {
    width: 15%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
    background-color: var(--primary);
    border: 15px solid var(--primary);
    border-radius: 50px;
}


.page-header {
    background: url() center center no-repeat;
    background-size: cover;
}

.page-header .breadcrumb-item,
.page-header .breadcrumb-item a {
    font-weight: 500;
}

.page-header .breadcrumb-item a,
.page-header .breadcrumb-item+.breadcrumb-item::before {
    color: #696E77;
}

.page-header .breadcrumb-item a:hover,
.page-header .breadcrumb-item.active {
    color: var(--primary);
}


/*** Facts ***/
@media (min-width: 992px) {
    .container.facts {
        max-width: 100% !important;
    }

    .container.facts .facts-text {
        padding-left: calc(((100% - 960px) / 2) + .75rem);
    }

    .container.facts .facts-counter {
        padding-right: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .container.facts .facts-text  {
        padding-left: calc(((100% - 1140px) / 2) + .75rem);
    }

    .container.facts .facts-counter  {
        padding-right: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .container.facts .facts-text  {
        padding-left: calc(((100% - 1320px) / 2) + .75rem);
    }

    .container.facts .facts-counter  {
        padding-right: calc(((100% - 1320px) / 2) + .75rem);
    }
}

.container.facts .facts-text {
    background: linear-gradient(rgba(1, 95, 201, .9), rgba(1, 95, 201, .9)), url(../img/carousel-1.jpg) center right no-repeat;
    background-size: cover;
}

.container.facts .facts-counter {
    background: linear-gradient(rgba(255, 255, 255, .9), rgba(255, 255, 255, .9)), url(../img/carousel-2.jpg) center right no-repeat;
    background-size: cover;
}

.container.facts .facts-text .h-100,
.container.facts .facts-counter .h-100 {
    padding: 6rem 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/*** Service ***/
.service-item {
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.service-item .service-icon {
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-item .service-icon img {
    max-width: 60px;
    max-height: 60px;
}

.service-item a.btn {
    color: var(--primary);
}

.service-item a.btn:hover {
    color: #FFFFFF;
    background: var(--primary);
    border-color: var(--primary);
}


/*** Appointment ***/
.appointment {
    background: linear-gradient(rgba(91, 65, 70, .8), rgba(91, 65, 70, .8)), url(../img/carousel-1.jpg) center center no-repeat;
    background-size: cover;
	background-attachment: fixed;
}

.appointment2 {
    background: linear-gradient(rgba(0, 0, 0, .8), rgba(0, 0, 0, .8)), url(../img/carousel-2.jpg) center center no-repeat;
    background-size: cover;
	background-attachment: fixed;
}

.appointment3 {
    background-color: #FFB200;
    background-size: cover;
	background-attachment: fixed;
}

/*** Team ***/
.team-item {
	background-color: #f9f9f9;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.team-item img {
    transition: .5s;
}

.team-item:hover img {
    transform: scale(1.1);
}

.team-text {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: -50px;
    opacity: 0;
    transition: .5s;
}

.team-item:hover .team-text {
    bottom: 0;
    opacity: 1;
}

.team-item a.btn {
    color: var(--primary);
}

.team-item a.btn:hover {
    color: #FFFFFF;
    background: var(--primary);
    border-color: var(--primary);
}


/*** Testimonial ***/
.animated.pulse {
    animation-duration: 1.5s;
}

.testimonial-left,
.testimonial-right {
    position: relative;
}

.testimonial-left img,
.testimonial-right img {
    position: absolute;
    padding: 5px;
    border: 1px dashed var(--primary);
    border-radius: 10px;
}

.testimonial-left img:nth-child(1),
.testimonial-right img:nth-child(3) {
    width: 70px;
    height: 70px;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
}

.testimonial-left img:nth-child(2),
.testimonial-right img:nth-child(2) {
    width: 60px;
    height: 60px;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
}

.testimonial-left img:nth-child(3),
.testimonial-right img:nth-child(1) {
    width: 50px;
    height: 50px;
    bottom: 10%;
    right: 10%;
}

.testimonial-carousel .owl-item img {
    width: 100px;
    height: 100px;
}

.testimonial-carousel .owl-nav {
    margin-top: 30px;
    display: flex;
    justify-content: center;
}

.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next {
    margin: 0 5px;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    background: var(--primary);
    border-radius: 10px;
    font-size: 22px;
    transition: .5s;
}

.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover {
    background: var(--secondary);
}


/*** Footer ***/
.footer {
    color: #EEEEEE;
}

.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color:  #EEEEEE;
    font-weight: normal;
    text-transform: capitalize;
    transition: .3s;
}

.footer .btn.btn-link::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color:  #EEEEEE;
    margin-right: 10px;
}

.footer .btn.btn-link:hover {
    color: var(--light);
    letter-spacing: 1px;
    box-shadow: none;
}

.footer .btn.btn-square {
    color:  #EEEEEE;
    border: 1px solid #EEEEEE;
}

.footer .btn.btn-square:hover {
    color: var(--secondary);
    border-color: var(--light);
}

.footer .copyright {
    padding: 25px 0;
    font-size: 15px;
    border-top: 1px solid rgba(256, 256, 256, .1);
}

.footer .copyright a {
}

.footer .copyright a:hover {
}

h1 span{
	font-size: 1.3rem;
}

h2 span{
	font-size: 1.3rem;
}

/*** Googleマップ ***/
.g_map iframe{
	width: 100%!important;
	height: 500px!important;
}

/*** ページング ***/
.paging {
	width: 100%;
	clear: both;
	text-align: center;
	font-size: 1.2em;
	margin-bottom: 20px;
}

.paging a {
	line-height: 2.5;
	margin-right: 10px;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
	color: #FFF;
    background: var(--primary);
    border-radius: 5px;
}

.paging a:hover {
    background: var(--secondary);
}

.paging a.current {
	text-decoration: none;
	font-size: 1.0em;
    background: var(--secondary);
}
	
/*** トップページ動画（上カット）***/
.video1 {
    position: relative;
	top:0px;
	width: 100%;
	height: 100%;
    object-position: 0;
    margin-bottom: 0;
}
@media (min-width: 1400px) {
.video1 {
	top:0px;
    object-position: 0px -270px;
    margin-bottom: -270px;
}
}

/*** トップページ動画（下カット）***/
.video2 {
    position: relative;
	top:0px;
	width: 100%;
	height: 100%;
    object-position: 0;
    margin-bottom: 0;
}
@media (min-width: 1400px) {
.video2 {
	top: -270px;
    object-position: 0px 270px;
    margin-bottom: -270px;
}
}

/*** ロゴサイズ　***/
@media (max-width: 768px) {
h1 img {
	width: 100%;
    max-width: 170px!important;
}
}

/*** 詳細　***/
.editer table th {
	color:#FF0000;
}

.editer table th,td {
	border-width: 1px;
	border-style: solid;
    padding: .5rem;
    text-align: center;
}

/*** 詳細　***/
.link-color a{
	color: #0329ce;
}

.link-color a:hover,
.link-color a:active,
.link-color a:focus{
	color: #eb3b54;
}

/*** 新着情報　***/
.whats {
	width: 100%!important;
	max-height: 600px!important;
	overflow-y: scroll;
}

.whats .wow{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
}

/*テーブル（横幅がはみ出る場合にテーブルを囲む要素に設定）*/
.table-scroll{
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/*** スマホメニュー　***/
.sp-menu{
	text-align: center;
    display: block;
}
.sp-menu a{
    display: block;
    font-weight: bold;
}



/* ----------------------------------
 * アドバンス
 * ---------------------------------- */
 
.advance{
	 width: 100%;
	 margin: 0 auto 0;
	 padding: 0;
	 text-align: center;
	 background-color: #000;
}
.advance p{
	 color: #FFF;
}