@charset "utf-8";
@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";
@media screen and (max-width: 767px) {
    /*--------------------------------------------
	 BASE
--------------------------------------------*/
    /* ---- MOUSE OVER STYLE ---- */
    .over {
        transition: 0.3s;
    }
    .cf:after {
        content: "";
        clear: both;
        display: block;
        height: 0;
    }
     :root .cf::after {
        /* IE9 */
        content: ""\9;
        clear: both\9;
        display: block\9;
        height: 0\9;
    }
	.cf_v2{
		display:flex;
	}
	.cf_v2:after {
	content: "";
	clear: both;
	display: block;
	height: 0;
}
:root .cf_v2::after { /* IE9 */
	content: ""\9;
	clear: both\9;
	display: block\9;
	height: 0\9;
}
    img {
        max-width: 100%;
        height: auto;
    }
    /*sp_none*パソコンだけ*/
    .for_pc {
        display: none;
    }
		
    @font-face {
        font-family: YuGothicM;
        src: local(Yu Gothic Medium);
    }
    /*body,html {
  font-family: YuGothic,YuGothicM,"メイリオ",sans-serif;
}*/
    body,
    html {
        font-family: "Font Awesome 5 Free","Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "MS PGothic", sans-serif;
        font-weight: 500;
    }
    body {
        width: 100%;
        min-width: 100% !important;
        height: auto;
        background: #fff;
        color: #333;
        font-size: 13px;
        line-height: 1.7;
        padding-top: 1.0em;
    }
    a {
        text-decoration: underline;
        color: #3C5DFF;
        display: inline-block;
    }
    #gNavi a,
    #top a,
    #header a,
    #ftr_inner a {
        text-decoration: none;
        color: #000000;
        /* display: flex; */
    }
    table {
        width: 100%;
    }
    /*--------------------------------------------
	 BUTTON
--------------------------------------------*/
    .button {
        text-align: center;
        text-decoration: none;
        line-height: 54px;
        outline: none;
        display: block;
        padding: 10px 0;
    }
    .button::before,
    .button::after {
        position: absolute;
        z-index: -1;
        display: block;
        content: '';
    }
    .button,
    .button::before,
    .button::after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all .3s;
        transition: all .3s;
    }
    .button_01 {
        position: relative;
        z-index: 2;
        background-color: #f87221;
        border: 2px solid #f87221;
        color: #fff;
        line-height: 50px;
    }
    .button_01::before,
    .button_01::after {
        left: 0;
        width: 100%;
        height: 50%;
        background-color: #f87221;
    }
    .button_01::before {
        top: 0;
    }
    .button_01::after {
        bottom: 0;
    }
    /*--------------------------------------------
	Header / ヘッダー
--------------------------------------------*/
    #header {
        width: 100%;
        padding-top: 10px;
    }
    #hdr_inner {
        width: 100%;
        margin: 0 auto;
    }
    #hdr_logo {
        float: left;
    }
    #hdr_logo a {
        float: left;
    }
    #hdr_right {
        float: right;
        width: 748px;
    }
    #hdr_sns {
        float: left;
        padding: 10px 10px 10px 60px;
        box-sizing: border-box;
    }
    #hdr_sns img {
        width: 70%;
    }
    #hdr_sns li {
        float: left;
    }
    #hdr_sns li:last-child {
        margin-right: 0;
    }
    #hdr_sns li a {
        width: 100%;
    }
    #header .tel_btn {
        float: left;
    }
    #header .link_btn {
        float: right;
    }
    #header .link_btn a {
        font-size: 18px;
        letter-spacing: 0.1em;
        border: 1px solid #FF9800;
        padding: 10px 45px 10px 30px;
        background: url(Image/common/arrow02.png) right 20px center no-repeat #FF9800;
        transition: .3s;
        color: #fff;
        border-radius: 3px;
    }
    /*--------------------------------------------
	Global Navigation / グローバルナビ
--------------------------------------------*/
    #gNavi ul {
        margin: 0 auto;
    }
/*     #gNavi li {
        float: left;
        text-align: center;
    } */
    #gNavi li a {
        width: 191px;
        margin-right: 8.25px;
        color: #fff;
        font-size: 15px;
        background: #213B74;
        padding: 5px 0;
        /* border: 1px solid #213B74; */
        /* padding: 5px 0; */
    }
    #gNavi li:last-child a {
        margin-right: 0px;
    }
    /**スマホメニュー**/
    #header {
        display: none;
    }
    #hbgNavi {
        margin-bottom: 10px;
        margin-top: 10px;
        padding: 0 5px;
    }
    #gNavi {
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 9999;
        background: #fff;
		font-size: 0;
    }
    #gNavi li a .jpn {
        font-size: 14px;
        border-bottom: none;
    }
	
    #hbg_logo {
		display: grid;
		grid-template-columns: 58% 20% 20%;
        background: linear-gradient(259deg, #1955a6, #bbc2ca);
        background-size: 100% 100%;
        -webkit-animation: backgroundGraduation 0s ease infinite;
        -moz-animation: backgroundGraduation 0s ease infinite;
        animation: backgroundGraduation 0s ease infinite;
		font-family: "Meiryo UI";
		font-size: 25px;
		color: #fff;
        margin-left: 0;
    }

    @-webkit-keyframes backgroundGraduation {
        0%{background-position:0% 26%}
        50%{background-position:100% 75%}
        100%{background-position:0% 26%}
    }
    @-moz-keyframes backgroundGraduation {
        0%{background-position:0% 26%}
        50%{background-position:100% 75%}
        100%{background-position:0% 26%}
    }
    @keyframes backgroundGraduation {
        0%{background-position:0% 26%}
        50%{background-position:100% 75%}
        100%{background-position:0% 26%}
    }


    #hbg_logo .header-elm img {
        display: flex;
         width: 100%; 
        /* line-height: 100%; */
        /* height: 75px; */
        align-items: center;
        margin: 0 auto;
    }
	
	.logolink{
		display: block;
		height: 100%;
	}
	
	.header-elm {
		display: flex;
		/* flex-direction: column; */
		justify-content: center;
		height: 2.5em;
		padding: 2px;
		/* font-size: 25px; */
		color: #fff;
		/* text-align: end; */
		/* width: 25%; */
	}
	
	.header-elm a {
		text-decoration: none !important;
		color: #fff !important;
		/* height: 75px; */
	}
	
	a.logo_toplnk {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}

    #phone_icon_hd::before{
        font-family: 'Material Icons';
        font-size: 1.0em;
        content: "call";
    }
    
    .vert {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.hd_icon {
		height: 70%;
	}

	.hd_txt{
		font-size:.6em;
		height: 30%;
	}
	
	li.hd_txt {
		position: relative;
		top: 10px;
		right: -8px;
	}
	
    .drawer-hamburger {
        z-index: 100 !important;
    }
    .drawer-hamburger-icon,
    .drawer-hamburger-icon:after,
    .drawer-hamburger-icon:before {
        background-color: #fff;
    }
    .drawer-nav {
        background: #ffffff;
        z-index: 99;
        padding: 10%;
        box-sizing: border-box;
    }
    .drawer-nav #hbg_logo {
        width: 35%;
        margin: 0 auto;
        margin-bottom: 20px;
    }
    .drawer-nav #hbg_logo img {
        width: 100%;
    }
    .drawer-nav li a {
        display: block;
        color: #000;
        padding: 8%;
        border-bottom: 1px solid #fff;
        font-size: 15px;
        text-align: center;
    }
    #gNavi.active {
        height: 100%;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
    #gNavi #hbg_logo {
		display: grid;
		grid-template-columns: 4fr 1fr 1fr;
		/*width: 100%;*/
		height: 2.5em;
		z-index: 999;
		padding: 3px;
		box-sizing: border-box;
		justify-content: center;
		align-items: center;
	}
    #gNavi .sub_nav li {
        width: 100%;
    }
    #gNavi .main_nav li {
/*         display: inline-block;
        position: relative;
        width: 65px;
        height: 60px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; */
    }
    /*-ハンバーガーボタン-*/
    #menubtn,
    #menubtn span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    #menubtn {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 39px 10px 0 10px;
        text-align: center;
        font-size: 11px;
        font-weight: bold;
        color: #fff;
    }
    #menubtn span:not([class]) {
        position: absolute;
        left: 0;
        width: 38px;
        height: 3px;
        background-color: #fff;
    }
    #menubtn span:nth-of-type(1) {
        top: 28px;
        left: 16px;
    }
    #menubtn span:nth-of-type(2) {
        top: 36px;
        left: 16px;
    }
    #menubtn span:nth-of-type(3) {
        top: 44px;
        left: 16px;
    }
    #menubtn.active span:nth-of-type(1) {
        -webkit-transform: translateY(8px) rotate(-45deg);
        transform: translateY(6px) rotate(-45deg);
    }
    #menubtn.active span:nth-of-type(2) {
        opacity: 0;
    }
    #menubtn.active span:nth-of-type(3) {
        -webkit-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-10px) rotate(45deg);
    }
    #menubtn span.cantarell {
        font-weight: 600;
        font-size: 25px;
        line-height: 1.0;
        color: #4169E1;
		position: fixed;
        right: 60px;
        top: 17px;
    }
    .sub_nav {
        display: none;
        width: 100%;
        position: relative;
        text-align: -webkit-center;
        padding: 0 0 10px;
        position: absolute;
        z-index: 101;
    }
    .sub_nav ul {
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center;
        background: url(Image/common/bg_orange.png) repeat left 50% top 50%;
        -webkit-background-size: 23%;
        background-size: 23%;
    }
    .sub_nav li {
        width: 100%;
    }
    .sub_nav a {
        display: block;
        width: 100%;
        height: 65px;
        line-height: 65px;
        vertical-align: middle;
        line-height: 1.4;
        text-align: center;
        font-size: 14px;
        color: #fff;
    }
    .sub_nav li:not(:last-child) a {
        border-bottom: 1px solid #fff;
    }
    .sub_nav a span {
        display: inline-block;
        line-height: 65px;
        vertical-align: middle;
    }
    /*  子メニュー追加版メニュー */
    #gNavi .sub_nav2 {
        display: none;
        width: 100%;
        position: relative;
        text-align: -webkit-center;
        padding: 0 0 10px;
        /* padding-top:40px;   上部の電話と無料体験ボタンを表示させるように少し上部にスペースをあける。*/
        position: absolute;
        z-index: 101;
    }
    #gNavi .sub_nav2 ul {
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center;
        background: url(Image/common/bg_orange.png) repeat left 50% top 50%;
        -webkit-background-size: 23%;
        background-size: 23%;
    }
    #gNavi .sub_nav2 ul li {
        text-align: center;
        position: relative;
        width: 100%;
    }
    #gNavi .sub_nav2 li {
        width: 100%;
    }
    #gNavi .sub_nav2 li:not(:last-child) a {
        border-bottom: 1px solid #fff;
    }
    #gNavi .sub_nav2 a span {
        display: inline-block;
        line-height: 65px;
        vertical-align: middle;
    }
    #gNavi .sub_nav2 li {
        width: 100%;
    }
    #gNavi .sub_nav2 ul li ul {
        position: relative;
        z-index: 101;
        top: 100%;
        left: 0;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    #gNavi .sub_nav2 ul li ul li {
        overflow: hidden;
        width: 100%;
        height: 0;
        color: #fff;
        transition: .2s;
    }
    #gNavi .sub_nav2 ul li ul li a {
        background: #2D519E;
        padding: 6px 0;
    }
    #gNavi .sub_nav2 li:last-child a {
        margin-right: 0px;
    }
    #gNavi .sub_nav2 li a:hover {
        color: #213B74;
        background: #fff;
        transition: 0.3s;
        font-weight: bold;
    }
    
    #gNavi .sub_nav2 ul li:hover>ul>li {
        overflow: visible;
        height: 38px;
    }
    #gNavi .sub_nav2 ul li ul:before {
        position: absolute;
        content: "";
        top: -22px;
        left: 85%;
        width: 0;
        height: 0;
        border: 6px solid transparent;
        border-top-color: #ffffff;
    }
    #gNavi .sub_nav2 ul li input[type="checkbox"].on-off:checked+ul:before {
        position: absolute;
        content: "";
        top: -30px;
        left: 85%;
        width: 0;
        height: 0;
        border: 6px solid transparent;
        border-bottom-color: #ffffff;
    }
    #gNavi .sub_nav2 ul li input[type="checkbox"].on-off {
        display: none;
    }
    #gNavi .sub_nav2 ul li input[type="checkbox"].on-off+ul li {
        height: 0;
        overflow: hidden;
    }
    #gNavi .sub_nav2 ul li input[type="checkbox"].on-off:checked+ul li {
        height: 38px;
        overflow: visible;
    }
    #gNavi .sub_nav2 ul li div {
        width: 100%;
        height: 100%;
        color: #fff;
        font-size: 18px;
        background: #213B74;
        padding: 5px 0;
        /* border: 1px solid #213B74; */
        /* padding: 5px 0; */
        border-bottom: 1px solid #fff;
    }
    /*------------------*/
    #gNavi ul {
        /* background: #fff; */
        /* padding-top: 65px; */
    }
	#gNavi .main_nav {
		/* display: inline-block; */
		/* width: 52px; */
		z-index: 999;
		position: absolute;
		/* right: 0; */
		/* padding-top: 0; */
		top: -.4em;
		right: 2.0em;
		/* height: 60%; */
	}
/*     #gNavi li {
        float: left;
        height: 100%;
        vertical-align: bottom;
    } */
    #gNavi li a {
        position: relative;
        width: 100%;
        height: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 18px;
        color: #fff;
        text-align: center;
        line-height: 1.5;
    }
    #gNavi li a>span {
        display: inline-block;
        width: 100%;
    }
    #gNavi li a span span {
        display: inline-block;
    }
    #gNavi li a span span.ja {
        font-size: 11px;
        margin-left: 15px;
    }
    #gNavi li a span.ja:before {
        content: '／';
        margin-right: 2px;
    }
	   /*--------------------------------------------
	スマホのみ 
--------------------------------------------*/
   
	.to_top {
        text-align: center;
        background-color: #213B74;
        padding: 5px;
    }
    .to_top a {
        color: #fff!important;
    }
    .to_top img {
        vertical-align: 0px;
        margin-right: 5px;
    }
    #ftr_nav_sp ul {
        text-align: center;
    }
    #ftr_nav_sp>ul>li {
        border-bottom: solid 1px #213b74;
        background: #c4e3ff;
        box-sizing: border-box;
    }
    #ftr_nav_sp>ul>li:nth-child(n+3) {
        float: left;
        width: 50%;
        border-right: solid #213B74 1px;
    }
    #ftr_nav_sp>ul>li:nth-child(2n+4) {
        border-right: none;
    }
    #ftr_nav_sp>ul>li:nth-last-child(-n+2) {
        border-bottom: none;
    }
    #ftr_nav_sp li a {
        display: block;
        padding: 5px 0;
        color: #213b74;
        font-weight: bold;
    }
    #ftr_nav_sp .sp_sns {
        background: #fff;
        padding: 5px;
    }
    #ftr_nav_sp .sp_sns li {
        width: 30%;
        display: inline-block;
        border: none;
    }
    #ftr_btn_sp {
        position: fixed;
        padding: 2%;
        top: 59px;
        box-sizing: border-box;
        background: #fff;
    }
    #ftr_btn_sp li {
        width: 49%;
        float: left;
        margin-right: 2%;
    }
    #ftr_btn_sp li:last-child {
        margin-right: 0;
    }
    #ftr_sp #ftr_logo {
        padding: 5px;
        text-align: center;
    }
    #ftr_sp #ftr_logo img {
        width: 150px;
    }
    /*--------------------------------------------
	BreadCrubm / パンくず
--------------------------------------------*/
    .under #breadcrumb {
        background: #64b5ff;
        margin-bottom: 50px;
        display: none;
    }
    .under #breadcrumb .breadcrumb_list {
        width: 1000px;
        margin: 0 auto;
        font-size: 12px;
        overflow: hidden;
    }
    #breadcrumb li a {
        color: #000;
        text-decoration: none;
        padding: 5px 0 5px 45px;
        background: #64b5ff;
        /* fallback color */
        position: relative;
        display: block;
        float: left;
    }
    #breadcrumb li a::after {
        content: " ";
        display: block;
        width: 0;
        height: 0;
        border-top: 50px solid transparent;
        /* Go big on the size, and let overflow hide */
        border-bottom: 50px solid transparent;
        border-left: 30px solid #64b5ff;
        position: absolute;
        top: 50%;
        margin-top: -50px;
        left: 100%;
        z-index: 2;
    }
    #breadcrumb li a::before {
        content: " ";
        display: block;
        width: 0;
        height: 0;
        border-top: 50px solid transparent;
        border-bottom: 50px solid transparent;
        border-left: 30px solid white;
        position: absolute;
        top: 50%;
        margin-top: -50px;
        margin-left: 1px;
        left: 100%;
        z-index: 1;
    }
    #breadcrumb li:last-child a::before {
        display: none;
    }
    #breadcrumb li:first-child a {
        padding-left: 15px;
    }
    #breadcrumb li:last-child a {
        background: transparent !important;
        pointer-events: none;
        cursor: default;
        color: #000;
    }
    #breadcrumb li:last-child a::after {
        border: 0;
    }
    /*--------------------------------------------
	main_cts / メインコンテンツ
--------------------------------------------*/
    #cts_inner {
        width: 94%;
        max-width: 100%;
        padding: 8px 3% 0;
        /* margin: 0 auto; */
		  padding-top: 52px;
    }
	   #cts_inner_top0 {
        width: 94%;
        max-width: 100%;
        padding: 8px 3% 0;
        /* margin: 0 auto; */
		  padding-top: 0px;
    }
	#top #cts_inner{
	 width: 94%;
        max-width: 100%;
        padding: 8px 3% 0;
        /* margin: 0 auto; */
		  padding-top: 0px;
	}
		#top #cts_inner_top0{
	 width: 94%;
        max-width: 100%;
        padding: 8px 3% 0;
        /* margin: 0 auto; */
		  padding-top: 0px;
	}
    #main_cts {
        width: 100%;
        margin-left: 0px;
       padding-top: 50px;
    }
	    #main_cts_top0 {
        width: 100%;
        margin-left: 0px;
       padding-top: 0px;
    }
    .under #cts_inner {}
    /*--------------------------------------------
	side_cts / サイドコンテンツ
--------------------------------------------*/
    #side_cts {
        display: none;
    }
    #side_cts #catLIst li {
        margin-bottom: 15px;
    }
    #side_cts #catLIst .side_sns {
        text-align: center;
    }
    #side_cts #catLIst .side_sns li {
        display: inline-block;
        width: 31%;
        margin-bottom: 0;
    }
    /*--------------------------------------------
	Footer / フッター
--------------------------------------------*/
    #footer {
        width: 100%;
        font-size: 12px;
    }
    .under #footer {
        border-top: 3px solid #3e7db7;
    }
    #ftr_inner {
        width: 100%;
        max-width: 1000px;
        padding: 60px 0px 10px;
        margin: 0 auto;
        position: relative;
        background: url(Image/common/logo.png) no-repeat top 10px center;
        background-size: auto 40px;
        box-sizing: border-box;
    }
    #ftr_nav {
        /* width:360px; */
        /* float:left; */
    }
    #ftr_btn {}
    #ftr_btn li {
        display: inline-block;
        margin-right: 5px;
        vertical-align: middle;
        width: 48%;
        /* font-size: 0; */
    }
    #ftr_btn .tel_btn {
        /* width:210px; */
    }
    #ftr_btn .link_btn {
        /* width:220px; */
    }
    #ftr_btn li:last-child {
        margin: 0;
    }
    #ftr_btn li img {
        width: 100%;
    }
    #ftr_btn .tel_btn a {}
    #ftr_btn .link_btn a {
        font-size: 14px;
        letter-spacing: 0.1em;
        border: 1px solid #FF9800;
        padding: 5px 5px;
        background: url(Image/common/arrow02.png) right 5px center no-repeat #FF9800;
        background-size: 15px;
        color: #fff;
        border-radius: 3px;
        /* width: 100%; */
        width: 100%;
        box-sizing: border-box;
        text-align: left;
    }
    #ftr_nav #ftr_nav_group {
        font-size: 11px;
    }
    #ftr_nav #ftr_nav_group>li {
        float: left;
        margin-right: 15px;
    }
    #ftr_nav #ftr_nav_group>li:last-child {
        margin-right: 0
    }
    #ftr_nav #ftr_nav_group li ul.group li {
        margin-bottom: 5px;
    }
    #ftr_nav li a {
        color: #000;
        height: 100%;
        transition: 0.4s;
    }
    #footer #copy {
        color: #fff;
        width: 100%;
        text-align: center;
        background: #3e7db7;
        margin-bottom: 0 !important;
    }
    #footer #totop {
        background: #c42727;
        position: absolute;
        right: 0;
        top: -58px;
        height: 43px;
    }
    #footer #totop a {
        background: url(Image/common/totop.png) 15px 10px no-repeat;
        width: 54px;
        height: 23px;
        padding: 10px 15px;
    }
    #ftr_nav {
        display: none;
    }
    #ftr_nav li {
        float: left;
        width: 50%;
        margin-bottom: 5px;
    }
    #ftr_btn {
        width: 100%;
        color: #000;
        font-weight: bold;
        margin-top: 0px;
        font-size: 0;
        text-align: center;
    }
    .flex {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
    }
    .pcH_spV {
        flex-flow: column;
    }

    /*--------------------------------------------
     *下部固定ボタン
--------------------------------------------*/

    #bottombtn_sp.show{
        position: fixed;
        bottom: 0;
        width: 100%;
	/*	height: 93px;*/
		z-index: 999;
		margin-bottom: 0;
/* 		font-size: 0; */
    }
	
	#bottombtn_sp.hide {
		position: fixed;
        bottom: 0;
		height: 25px;
        width: 100%;
		margin-bottom: 0;
		z-index: 999;
	}

    #bottombtn_sp label {
		display: inline-block;
        width: 100%;
        height: 25px;
		bottom: 0;
        background: rgba(108,143,166,0.9);
        color: #193453;
    }

    #bottombtn_sp .show #bottombtn_sp_switch {
        /* width: 100%;
        height: 32px;
        background: rgba(108,143,166,0.9);
        color: #193453; */
        font-size: 0;
    }
	
	#bottombtn_sp .hide #bottombtn_sp_switch {
		bottom: 0;
	}
	
	
	
	
    #bottombtn_sp_switch input {
        display: none;
    }
	
/* 	#bottombtn_sp_switch input:checked ~  #bottombtn_sp_switch {
		
		bottom: 0;
		
	}
  */
    .switch_elm {
        display: inline-block;
        vertical-align: center;
    }

    #switch_arrow {
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-top: 15px solid #1955A6;
        margin-left: 10px;
        transition: .5s;
    }

    #bottombtn_sp_switch input:checked ~ 
    #switch_arrow {
/*         width: 0;
        height: 0; */
/*         border-left: 18px solid transparent;
        border-right: 18px solid transparent;
        border-bottom: 18px solid #1955A6; */
/*         margin-left: 10px;  */
		transform: rotate(180deg);
    }

    #switch_txt:after {
        font-size: 15px;
        color: #193453;
        content: 'CLOSE';
		transform: translate(0, 0);

    }

    #bottombtn_sp_switch input:checked ~ #switch_txt:after {
        font-size: 20px;
        color: #193453;
        content: 'OPEN'

    }
	
	.bottombtn_sp_elm {
		position: relative;
	}
	
	.bottombtn_sp_elm a {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	
	
	.bottombtn_sp_elm {
		width: 100%;
/* 		border: .5px solid #707070; */
		display: inline-block;
	}
	
	#bottombtn_sp .show #taiken-container  {
		display: block;
	}
	
	#bottombtn_sp .hide #taiken-container  {
		display: none;
	}

    #taiken_kyoshitsu{
        height:93px;
        font-size: 0;
        margin: 0;
        line-height: 32px;
        background: #f39800;
    }
	   #taiken_kyoshitsu2{
        height:50px;
          margin: 0;
        line-height: 32px;
        background: white;
    }
	.kyoshitsu_elm {
        display: inline-block;
		margin-top: 0px;
    }

    #kyoshitsu_icon {
		font-size: 63px;
		color:  rgba(80, 84, 87, 1.0);
		margin-left: 25px;
    }
	
    #kyoshitsu_txt {
        color: #fff;
        font-size: 19px;
		margin-top: 10px;
    }
	
	 #taiken_online{
        height: 93px;
        font-size: 0;
        line-height: 32px;
        background: #0059f2;
 }
		
	 #taiken_online2{
        height: 70px;
     
        line-height: 32px;
        background: #0059f2;
 }
	.online_elm {
        display: inline-block;
		margin-top: 10px;
    }

    #online_icon {
		font-size: 63px;
		color: rgba(42, 47, 51, 1.5);
		margin-top: 10px;
		margin-left: 25px;
    }
	
    #online_txt {
        color: #fff;
        font-size: 15px;
		top: 10px;
    }
    
	#taiken_kyoshitsu, #taiken_online{
		opacity: 1;
   		transition: .3s;
	}
	#taiken_kyoshitsu:hover, #taiken_online:hover{
		opacity: .65;
	}


    
    /* 「トップへ」ボタンをずらす */
    .wp-to-top {
		border-radius: 50%;
	
		left: 85vw !important;
		}
	
	.wp-to-top-is-visible {
		background: #5c7de7 !important;
	}
	/* 余白対策	 */
	.drawer {
    overflow: hidden;
	}

/*--------------------------------------------
	   * 共通部品（SP用）
--------------------------------------------*/
.top-title {
    transform: translate(-0.4em);
    font-size: 2rem;
    /* margin-bottom: 1.5em; */
    /* margin-top: 40px; */
	max-width:100%
}
	
/* 「申し込みフォームへ」 */
	
#to_form_new {
        position: fixed;
        bottom: 0;
        z-index: 10;
        left: 0;
        width: 96%;
        padding: 2%;
        background: transparent;
        left: 74vw;
}
	#to_form_new2 {
        position: fixed;
        bottom: 0;
        z-index: 10;
        left: 0;
        width: 96%;
        padding: 2%;
        background: transparent;
        left: 74vw;
}
#to_form_new a {
    animation: bound-anim 2s linear 0s infinite alternate;
    color: #fff;
    background:#a6199c;
    display: flex;
    justify-content: center;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1.2em;
    font-weight: bold;
    align-items: center;
    text-align: center;
}
	#to_form_new2 a {
    animation: bound-anim 2s linear 0s infinite alternate;
    color: #fff;
    background: rgb(238 120 0 / 90%);
    display: flex;
    justify-content: center;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1.2em;
    font-weight: bold;
    align-items: center;
    text-align: center;
}
	
@keyframes bound-anim {
	0%,100% {top: 0;transform: scale(1);}
/* 	30% {top: -90%; transform: scale(0.96,1.02);}
	60% {transform: scale(1);} */
	50% {top: 0;transform: scale(1.03,0.9);}
}
	

/*--------------------------------------------
	   * 体験エリア（SP用）
--------------------------------------------*/
.triangled_space{
    /* position: relative; */
    margin: 0 calc(50% - 50vw);
    /* height: 50vh; */
    background-color: rgba(25, 156, 166, 0.25);
}

.bg_triangle{ 
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 50vw 0 50vw;
    border-color: #fff transparent transparent transparent;
    margin: 0 calc(50% - 50vw);
    z-index: 10;
} 

.under_triangle {
    padding: 20px 15px;
}

#taiken_uketsuke_hd {
    height: 8vh;
    color: #1955A6;
    font-size: 2.0em;
    font-weight: bold;
    text-align: center;
    line-height: 2.0em;
}

#taiken_uketsuke_hd .top-hd-li {
    right: 50%;
}

.tuhd-elm {
    display: inline-block;
}

#taiken_uketsuke_txt {
    width: 90%;
    margin: 0 auto;
    text-align: center;
}

#taiken_uketsuke_txt span {
    color: #262C30;
    font-size: 18px;
    border-bottom: dotted 3px #707070;
    text-align: center;
}



#tu-elm-container {
    text-align: center;
    margin-top: 15px; 
    height: 25vh;
}

.taiken_uk_elm {
    display: flex;
    justify-content: center;
    align-items: center;
}

.tu_link {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    width: 40vw;
    height: 20vh;
    border: 1px solid #707070;
    border-radius: 20px;
}

#taiken_uketsuke_kyoshitsu {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background: linear-gradient(135deg, rgb(204 116 0 / 60%), rgba(216 167 7 / 64%)) right 74% bottom 10% / cover, url(/img/top_new/kyoshitsu.jpg);
    background-position: right 57% bottom 80%;
    background-size: cover;
}

#taiken_uketsuke_online {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background: linear-gradient(135deg, rgb(14 0 204 / 50%), rgb(76 70 162 / 50%)) right 74% bottom 10% / cover, url(/img/top_new/online.jpg);
    background-position: right 40% bottom;
    background-size: 177%;
}
#taiken_uketsuke_kyoshitsu2 {
    width: 100%;
    height: 100%;
    /*border-radius: 20px;*/
    background: url(/img/top_new/sp_taiken_button_taiken.jpg);
 
    background-size: contain;
	animation: flash_half 3s linear infinite;
}
@keyframes flash_half {
  0%,100% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }
}
#taiken_uketsuke_online2 {
    width: 100%;
    height: 100%;
    /*border-radius: 20px;*/
    background:url(/img/top_new/sp_taiken_button_online.jpg);
    background-size: cover;
}
#tu_kyoshitsu_icon , #tu_online_icon {
    width: 100%;
    height: 60%;
    padding: 10px auto 10px;
}

.tk_uk_ky_elm{
    font-size: 6.5em;

} 
.tk_uk_ol_elm {
    font-size: 2.5em;
}

#tu_kyoshitsu_moji , #tu_online_moji {
    font-size: 1.5em;
    font-weight: bold;
    color: #fff;
    line-height: 1.5em;
    text-shadow: 2px 2px 10px #777, -2px 2px 10px #777, 2px -2px 10px #777, -2px -2px 10px #777;
}

	
/*--------------------------------------------
	   * 横スクロール部品
--------------------------------------------*/
	.horizontal_scroll{
  		overflow-scrolling: touch;  /* スクロールを滑らかにする */
  		-webkit-overflow-scrolling: touch;  /* スクロールを滑らかにする */
	}
	.horizontal_scroll li{
		height: 390px;  /* 横スクロールする範囲の高さを指定 */
	}
	.card_scroll {
        width: 190px;
		height: 350px;  
		margin: 3px;
		padding: 13px 8px 12px 10px;
    }
	.card-img_scroll {
        width: 115px;
        height: 170px;
    }
	.card-content_scroll {
        padding: 1px 10px 1px 10px;
    }
	.card-title_scroll {
		height: 50px;
        font-size: 13px;
        margin-bottom: 2px;
        text-align: center;
        letter-spacing: -1px;
        line-height: 23px;
    }
	 .card-titleBig_scroll {
        font-size: 15px;
    }
	.card-detail_scroll{
		color: #777;
        font-size: 12px;
        line-height: 1.2;
        margin: 6px 0px;
        text-align: left;
		white-space: normal;
    }
	.breadcrumbs{
	 display:none;
}


/*--------------------------------------------
	   * スペース調整用
--------------------------------------------*/
    #main_cts .top0 {
        padding-top: 0px;
    }
}
