@media screen and (max-width: 750px) {
    .sp_hidden {
        display: none
    }
    .pc_hidden {
        display: inline
    }
    p {
        padding: 0;
        margin: 0;
    }
    /*font-face*/
    @font-face {
        font-family: 'condenseicon';
        src: url('../font/CONDENSEicon.ttf') format('truetype'), url('../font/CONDENSEicon.otf') format('opentype'), url('../font/CONDENSEicon.woff') format('woff');
    }
    @font-face {
        font-family: 'LigatureSymbols';
        src: url('../font/LigatureSymbols-2.11.eot');
        src: url('../font/LigatureSymbols-2.11.eot?#iefix') format('embedded-opentype'), url('../font/LigatureSymbols-2.11.woff') format('woff'), url('../font/LigatureSymbols-2.11.ttf') format('truetype'), url('../font/LigatureSymbols-2.11.svg#LigatureSymbols') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    body {
        -webkit-text-size-adjust: none;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        color: #222 !important;
        font-size: 11.5pt !important;
        line-height: 180% !important;
        text-align: left;
    }
    * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    img, iframe {
        vertical-align: bottom;
    }
    #wrap {
        background: #fff;
    }
    #ind img {
        width: auto;
        max-width: 100%;
    }
    .sec main {
        margin: 7% 5% 5%;
        background: #fff;
        position: relative;
        z-index: 999;
        padding: 5%;
    }
    .sec main img {
        width: auto;
        max-width: 100%;
    }
    .content_wrap {
        width: 90%;
        margin: 0 auto;
    }
    ol {
        margin: 0;
        padding: 0;
    }
    ul {
        margin: 0;
        padding: 0;
    }
    ol.un {
        padding-bottom: 20px;
    }
    ol.un li {
        margin-left: 1.5em;
    }
    .table_basic {
        border-collapse: separate;
        background: #fff;
        border-style: none;
        width: 100%;
    }
    .table_basic th {
        background: #f7f7f7;
        padding: 12px 12px;
        font-weight: normal;
        text-align: left;
        display: block;
    }
    .table_basic th span {
        display: block;
    }
    .table_basic td {
        padding: 12px 12px;
        display: block;
    }
    .table_basic td input.input {
        width: 100%;
        border: 1px solid #ccc;
    }
    .table_basic td textarea {
        width: 100%;
        height: 120px;
        border: 1px solid #ccc;
    }
    .scrool-table table {
        display: block;
        overflow-x: scroll;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .table_scrool {
        border-collapse: separate;
        border-spacing: 1px;
        background: #ddd;
        border-style: none;
        width: 100%;
    }
    .table_scrool th {
        background-color: #f3f3f3;
        padding: 8px;
        font-weight: normal;
        border-top: 1px solid #FFF;
        text-align: left;
    }
    .table_scrool td {
        background-color: #FFF;
        padding: 8px;
        border-top: 1px solid #FFF;
    }
    .table_scrool td img {}
    .req-mark {
        font-size: 8pt;
        color: #D00003
    }
    .right {
        text-align: right;
    }
    .cen {
        text-align: center;
    }
    .sp_no {
        display: none
    }
    .h img {
        display: none;
    }
    /*----------------------------------------ヘッダ----------------------------------------*/
    #ind header {
        width: 100%;
        text-align: center;
    }
    #ind #logo {
        display: none;
    }
    #ind #logo img {
        display: none;
    }
    header .h_menu {
        display: none;
    }
    .sec header {
        width: 100%;
        position: relative;
        z-index: 2;
    }
    .sec #logo {
        background: url("../img/sec_logo_bg.png")no-repeat left top / 200px auto;
        min-height: 220px;
        padding: 15px 15px;
    }
    .sec #logo img {
        display: block;
        width: 80px;
    }
    .menu-btn {}
    /*----------------------------------------Ｇナビ----------------------------------------*/
    nav {
        display: none;
    }
    .sp_navbox {}
    .sp_nav {
        position: fixed;
        bottom: 0;
        width: 100%;
        display: flex;
        background: #222;
        z-index: 999999;
    }
    .sp_nav li {
        flex: 1;
        padding: 12px 0;
        border-top: 1px solid #666;
        text-align: center;
    }
    .sp_nav li + li {
        border-left: 1px solid #666;
    }
    .sp_nav li a {
        color: #fff;
        display: block;
    }
    .sp_nav li:nth-child(1) a:before {
        font-family: 'LigatureSymbols';
        content: "\E100";
        line-height: 1;
        font-weight: normal;
        font-size: 19pt;
    }
    .sp_nav li:nth-child(2) a:before {
        font-family: 'LigatureSymbols';
        content: "\E08a";
        line-height: 1;
        font-weight: normal;
        font-size: 19pt;
    }
    .sp_nav li:nth-child(3) a:before {
        font-family: FontAwesome;
        content: "\f0c9";
        font-weight: normal;
        font-size: 16pt;
    }
    .sp_nav li a span {
        font-size: 11pt;
        line-height: 1.4;
        padding-top: 6px;
        display: block;
    }
    /*----------------------------------------フッタ----------------------------------------*/
    footer {
        background: rgb(24, 24, 24);
        background: linear-gradient(90deg, rgba(24, 24, 24, 1) 30%, rgba(61, 61, 61, 1) 50%, rgba(24, 24, 24, 1) 70%);
        padding: 30px 0 30px;
        margin: 0 auto;
        color: #fff;
        text-align: center;
    }
    footer .logo {
        display: block;
        font-size:15pt;
        line-height: 15pt;
        margin-bottom: 10px;
    }
    footer .add {
        margin-bottom: 25px;
    }
    footer .tel {
        margin-bottom: 15px;
    }
    footer .tel span {
        font-size: 18pt;
        line-height: 18pt;
        font-weight: 400;
        display:block;
        margin-bottom: 13px;
        letter-spacing: 1pt;
    }
    footer .tel span.tel:before {
        font-family: 'LigatureSymbols';
        content: "\E100";
        line-height: 1;
        margin-right:4px;
        font-weight: 300;
    }
    footer .tel span.fax:before {
        font-family: 'LigatureSymbols';
        content: "\E10a";
        line-height: 1;
        margin-right:4px;
        font-weight: 300;
        font-size: 22pt;
    }
    footer div.btn {
        margin-bottom: 15px;
    }
    footer div.btn a {
        border: 1px solid #999;
        background: url("../img/btn_arrow_w.png") no-repeat top 16px right 15px;
        display: inline-block;
        padding: 8px 70px;
        color: #fff;
        text-align: center;
    }
    footer div.btn a:hover{
        background:#222 url("../img/btn_arrow_w.png") no-repeat top 16px right 15px;
    }
    footer ol {
        display: none;
    }
    .copy {
        font-size: 11pt;
        text-align: center;
        padding: 10px 0 90px;
    }
    #topcontrol {
        position: fixed;
        bottom: 90px;
        right: 10px;
        background: #222;
        z-index: 9999999;
        border-radius: 100px;
    }
    #topcontrol img {
        display: none;
        display: block;
        width: 50px;
        height: 50px;
    }
    /*----------------------------------------メインイメージＩＮＤＥＸ----------------------------------------*/
    #viewerbox, .viewer, .viewer .kv_txt1, .viewer .kv_txt2, .viewer .kv_txt3, .viewer ul {
        display: none;
    }
    #slides {
        margin: 0 auto;
    }
    /*----------------------------------------index----------------------------------------*/
    #index01 {
        margin: 40px auto 70px;
        background: url("../img/index01_bg.png") no-repeat center top;
    }
    #index01 h2 {
        text-align: center;
        font-size: 20pt;
        line-height: 20pt;
        font-weight: 500;
        margin: 0 auto;
        padding:0px 0 20px 0;
        letter-spacing:2pt;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #index01 p {
        letter-spacing: normal;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        line-height: 24pt;
        font-weight: 500;
        display: block;
        padding: 0 0 20px 0px;
    }
    #index01 span {
        display:none;
        text-align: center;
        font-family: "noto serif";
        font-weight: 800;
        font-size:28pt;
        line-height: 30pt;
        letter-spacing: 0pt;
        color: #e9eaea;
    }
    #index02 {
        text-align: center;
        margin-bottom: 50px;
    }
    #index02 h2 {
        font-size: 20pt;
        line-height: 20pt;
        font-weight: 500;
        margin: 0;
        padding: 0 0 20px 0;
        letter-spacing: 2pt;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #index02 p.comment {
        display: block;
        padding-bottom: 20px;
    }
    #loopslider {
        margin: 0px auto 35px auto;
        width: 100%;
        height: 220px;
        text-align: left;
        position: relative;
        overflow: hidden;
    }
    #loopslider ul {
        height: 220px;
        float: left;
        display: inline;
        overflow: hidden;
    }
    #loopslider ul li {
        width: 280px;
        height: 220px;
        float: left;
        display: inline;
        overflow: hidden;
        text-align: center;
    }
    #loopslider ul li img {
        width: 270px;
        height: 180px;
    }
    #loopslider ul li p {
        display: block;
        padding-top: 10px;
    }
    #index03 {
        margin: 0 auto;
        margin-bottom: 30px;
    }
    #index03 div.tit {
        display:none;
        align-items: center;
        font-family: "noto serif";
        font-weight: 800;
        font-size: 52pt;
        line-height: 52pt;
        letter-spacing: 0pt;
        color: #e9eaea;
    }
    #index03 div.tit div.line {
        display: flex;
        align-items: center;
        font-weight: 500;
        font-size: 14pt;
        line-height: 14pt;
        letter-spacing: 2pt;
        color: #222;
        margin-left: 15px;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        width: 240px;
    }
    #index03 div.tit div.line:after {
        content: "";
        flex-grow: 1;
        height: 1px;
        background: #222;
        display: block;
    }
    #index03 div.tit div.line:after {
        margin-left: .4em;
    }
    #index03 h2 {
        font-size: 20pt;
        line-height:20pt;
        text-align: center;
        font-weight: 500;
        margin: 0;
        padding: 30px 0 20px 0px;
        letter-spacing: 2pt;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #index03 p {
        letter-spacing: normal;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        line-height: 24pt;
        font-weight: 500;
        display: block;
        padding: 0 0 20px 0px;
    }
    #index03 div.btn {
        text-align: center;
    }
    #index03 div.btn a {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 22px right 10px;
        display: inline-block;
        padding: 14px 5px;
        color: #fff;
        width: 200px;
        text-align: center;
        margin-bottom: 20px;
    }
    #index04 {
        padding: 20px 0 60px 0;
        background: url("../img/index04_bg.png")no-repeat left top / contain;
    }
    #index04 .txt {
        margin-bottom:0px;
    }
    #index04 div.tit {
        font-family: "noto serif";
        font-weight: 800;
        font-size: 24pt;
        line-height: 24pt;
        letter-spacing: 0pt;
        color: #fff;
    }
    #index04 div.tit div.line {
        display: none;
        align-items: center;
        font-weight: 500;
        font-size: 14pt;
        line-height: 14pt;
        letter-spacing: 2pt;
        color: #222;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        width: 240px;
        margin-top: 25px;
    }
    #index04 div.tit div.line:after {
        content: "";
        flex-grow: 1;
        height: 1px;
        background: #222;
        display: block;
        margin-left: .4em;
    }
    #index04 h2 {
        font-size: 14pt;
        line-height:25pt;
        font-weight: 600;
        margin: 0;
        padding: 15px 0 25px 0px;
        letter-spacing: 1pt;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    #index04 p {
        text-align: left;
        letter-spacing: normal;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        font-weight: 500;
        display: block;
        font-size: 12pt;
        line-height: 24pt;
        margin-top: 10px;
    }
    #index04 ol {
        display: flex;
        justify-content: space-between;
        width: 100%;
        margin-bottom: 30px;
        gap: 7px;
    }
    #index04 ol li{
        width: calc((100% - 28px) / 5);
    }
    #index04 div.btn {
        text-align: center;
    }
    #index04 div.btn a {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 22px right 10px;
        display: inline-block;
        padding: 14px 5px;
        color: #fff;
        width: 200px;
        text-align: center;
    }
    #index05 {
        background: url("../img/index05_bg_sp.png")no-repeat center top / contain;
        padding: 40px 0 10px 0;
        text-align: center;
    }
    #index05 div.comment {
        color: #fff;
        font-size: 12pt;
        margin-bottom: 30px;
    }
    #index05 div.comment span {
        display: block;
        font-size: 21pt;
        padding: 15px 0;
    }
    #index05 ol {
        background: #fff;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 4% 4%;
        border-radius: 8px;
    }
    #index05 ol li {
        width: 48%;
        margin-bottom: 4%;
    }
    #index05 ol a {
        color: #222;
        font-size: 11pt;
    }
    #index05 ol a p {
        display: block;
        padding-top: 5px;
    }
    #index06 .box {
        margin-bottom: 30px;
        text-align: center;
    }
    #index06 div.tit {
        font-family: "noto serif";
        font-weight: 800;
        font-size: 32pt;
        line-height: 32pt;
        letter-spacing: 0pt;
        color: #e9eaea;
        position:relative;
        z-index: 1;
    }
    #index06 div.tit div.line {
        font-weight: 500;
        font-size: 17pt;
        line-height: 17pt;
        letter-spacing: 2pt;
        color: #222;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        margin: -15px auto 25px;
        position:relative;
        z-index: 1;
    }
	
.index05{
	background: url(../img/index05_bg.jpg) no-repeat top center;
	background-size:cover;
	padding:15px;
	margin-bottom:12px;
	}
.index05 .box{
	margin:0 auto;
	} 
.index05 .box .pic{
	text-align:center;
	}
.index05 .box .pic img{
	width:200px;
	}
.index05 .box .txt{
	padding-bottom:10px;
	color: #FFFFFF;
	padding-right: 130px;
	}
.index05 .box .txt strong{
	font-size:14pt;
	display:block;
	padding-bottom:10px;
	color: #FFFFFF;
	}
.index05 .box .txt span{
	display:block;
	font-family :"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
	padding-top:5px;
	}
    /*--------------------------------------------------------------------------------*/
    #kv_sec {
        height: 300px;
        width: 100%;
        position: absolute;
        z-index: 1;
        margin: 0 auto;
        top: 0px;
    }
    .kv_sec_fadeRight {
        animation-name: kv_sec_fadeRight;
        animation-duration: 2s;
        animation-delay: 0.0s;
        animation-fill-mode: forwards;
        opacity: 0;
    }
    @keyframes kv_sec_fadeRight {
        from {
            opacity: 0;
            transform: translateX(0px);
        }
        to {
            opacity: 1;
            transform: translateX(0);
        }
    }
    .kv_company {
        background: url("../img/sec_kv_company.png")no-repeat center top / cover;
    }
    .kv_staff {
        background: url("../img/sec_kv_staff_sp.png")no-repeat center top / cover;
    }
    .kv_service {
        background: url("../img/sec_kv_service.png")no-repeat center top / cover;
    }
    .kv_archive {
        background: url("../img/sec_kv_archive.png")no-repeat center top / cover;
    }
    .kv_recruit {
        background: url("../img/sec_kv_recruit.png")no-repeat center top / cover;
    }
    .kv_access {
        background:url("../img/sec_kv_access.png")no-repeat center top / cover;
    }
    .kv_contact {
        background: url("../img/sec_kv_contact.png")no-repeat center top / cover;
    }
    .kv_sitemap {
        background: url("../img/sec_kv_sitemap.png")no-repeat center top / cover;
    }
    .kv_policy {
        background: url("../img/sec_kv_policy.png")no-repeat center top / cover;
    }
    .kv_event {
        background: url("../img/sec_kv_event.png")no-repeat center top / cover;
    }
    .sec h2 {
        position: absolute;
        bottom: 24px;
        left: 20px;
        font-family: "noto serif";
        font-weight: 800;
        font-size: 46pt;
        line-height: 46pt;
        letter-spacing: 2pt;
        color: #fff;
    }
    .sec_h2_fadeLeft {
        animation-name: sec_h2_fadeLeft;
        animation-duration: 1.5s;
        animation-delay: 0.7s;
        animation-fill-mode: forwards;
        opacity: 0;
    }
    @keyframes sec_h2_fadeLeft {
        from {
            opacity: 0;
            transform: translateX(-20px);
        }
        to {
            opacity: 1;
            transform: translateX(0);
        }
    }
    h3 {
        display: flex;
        align-items: center;
        font-weight: 500;
        font-size: 17pt;
        line-height: 17pt;
        letter-spacing: 2pt;
        color: #222;
        font-family: 'Noto Serif JP', sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        width: 100%;
        margin: 0 0 25px;
    }
    h3:after {
        content: "";
        flex-grow: 1;
        height: 1px;
        background: #222;
        display: block;
        margin-left: .4em;
    }
    .mbs {
        margin-bottom: 10px;
    }
    .mbm {
        margin-bottom: 20px;
    }
    .mbl {
        margin-bottom: 30px;
    }
    ol.num {}
    ol.num li {
        padding: 0 0 5px;
        margin-left: 2em;
        list-style-type: decimal;
    }
    ol.disc {}
    ol.disc li {
        padding: 0 0 5px;
        margin-left: 2em;
        list-style-type: disc;
    }
    ol.check {
        padding-left: 1em; /* 文章のスタート位置。li:beforeが入るスペースを確保*/
    }
    ol.check li {
        position: relative;
        padding: 5px 0 5px 0.4em;
    }
    ol.check li:before {
        font-family: FontAwesome;
        content: "\f058";
        position: absolute;
        left: -1em; /* アイコンのスタート位置。左揃えの場合 ul のpadding-leftと同じ値 */
        color: #ccc;
    }
    /*-----------------------------------------archive---------------------------------------*/
    #archive ol.list {
        background: #f7f7f7;
        padding: 30px 30px 10px;
    }
    #archive ol.list li {
        margin-bottom: 20px;
    }
    #archive ol.list li a {
        display: block;
        background: #fff url("../img/btn_arrow_b.png") no-repeat top 28px right 20px;
        border: 1px solid #ccc;
        color: #222;
        text-align: center;
        padding: 20px 0;
    }
    #archive ol.list li a:hover {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 28px right 20px;
        color: #fff;
    }
    #archive ol.list li a.ov {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 28px right 20px;
        color: #fff;
    }
    #archive ol.list_num {
        display: flex;
        flex-wrap: wrap;
        gap: 30px;
        margin-bottom: 30px;
    }
    #archive ol.list_num li {
        width: calc((100% - 30px) / 2);
    }
    #archive ol.list_num li p {
        display: block;
        padding-top: 10px;
    }
    #archive ol.list_num li a {
        display: block;
        background: #fff url("../img/btn_arrow_b.png") no-repeat top 40px right 20px;
        color: #222;
        text-align: center;
        padding: 0px 0;
    }
    #archive .t-come {
        margin-top: 10px;
        margin-bottom: 30px;
    }
    #archive .t-come span {
        display: block;
        padding-bottom: 15px;
        margin-bottom: 15px;
        border-bottom: 1px solid #ccc;
        font-size: 14pt;
    }
    #archive .slider {
        margin: 0 auto 60px;
        width: 100%;
        max-width: 1100px;
    }
    #archive .slider img {
        height: auto;
        width: 100%;
    }
    #archive .slick-slide:not(.slick-center) { /*-----------左右画像のモノクロ処理---------*/
        -webkit-filter: grayscale(100%);
        -moz-filter: grayscale(100%);
        -o-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
        filter: grayscale(100%);
        transition: 0.2s linear;
    }
    /*-----------------------------------------service---------------------------------------*/
    #service ol {
    }
    #service ol li {
        text-align: center;
        margin-bottom: 50px;
    }
    #service ol li div.pic {
        position: relative;
    }
    #service ol li strong {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
        margin: auto;
        font-family: "noto serif";
        font-size: 40pt;
        line-height: 40pt;
        color: #FFF;
        font-weight: 800;
    }
    #service ol li strong span {
        display: block;
        font-family: "noto serif";
        font-size: 10pt;
        line-height: 10pt;
        color: #FFF;
        font-weight: 800;
    }
    #service ol li span.tit {
        display: block;
        font-size: 17pt;
        line-height: 17pt;
        padding: 15px 0 15px;
    }
    #service ol li p {
        display: block;
        padding-bottom: 20px;
    }
    #service ol li a {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 20px right 20px;
        display: inline-block;
        padding: 10px 5px;
        color: #fff;
        width: 180px;
        text-align: center;
    }
    #service ol li:last-child{
        margin-bottom: 0px;
    }
    /*-----------------------------------------staff---------------------------------------*/
    #staff .box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30px;
    }
    #staff .box:last-child{
        margin-bottom: 0;
    }
    #staff .box .pic {
        width: 150px;
    }
    #staff .box .txt {
        width: calc(100% - 170px);
        position: relative;
    }
    #staff .box .txt span {
        display: block;
        font-size: 16pt;
        margin-bottom: 15px;
        z-index: 2;
        position: relative;
        padding-top: 20px;
    }
    #staff .box .txt p {
        margin-bottom: 15px;
        z-index: 2;
        position: relative;
    }
    #staff .box .txt div {
        display: block;
        font-family: "noto serif";
        font-size: 24pt;
        line-height: 24pt;
        color: #f1f1f1;
        font-weight: 800;
        position: absolute;
        top:0px;
        z-index: 1;
    }
    #staff .box:nth-child(even) {
        flex-direction: row-reverse;
    }
    /*-----------------------------------------recruit---------------------------------------*/
    #recruit div.btn {
        text-align: center;
    }
    #recruit div.btn a {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 26px right 20px;
        display: inline-block;
        padding: 18px 5px;
        color: #fff;
        width: 250px;
        text-align: center;
    }
	
.gallery {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 10px;
                max-width: 1200px;
                margin: 0 auto;
            }

            .gallery-item {
                position: relative;
                overflow: hidden;
                border-radius: 8px;
                cursor: pointer;
                aspect-ratio: 4/3;
                background: #ddd;
            }

            .gallery-item img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 0.3s ease;
            }

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

            .modal {
                display: none;
                position: fixed;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background: rgba(0, 0, 0, 0.9);
                z-index: 1000;
                justify-content: center;
                align-items: center;
                padding: 20px;
            }

            .modal.active {
                display: flex;
            }

            .modal-content {
                max-width: 90%;
                max-height: 90%;
                position: relative;
            }

            .modal-content img {
                width: 100%;
                height: 100%;
                object-fit: contain;
            }

            .close-btn {
                position: absolute;
                top: -35px;
                right: 0;
                color: white;
                font-size: 30px;
                font-weight: bold;
                cursor: pointer;
                background: none;
                border: none;
                padding: 0;
                line-height: 1;
            }

            .close-btn:hover {
                color: #ccc;
            }

            .nav-btn {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                background: rgba(255, 255, 255, 0.3);
                color: white;
                border: none;
                font-size: 30px;
                padding: 5px 15px;
                cursor: pointer;
                border-radius: 5px;
            }

            .nav-btn:hover {
                background: rgba(255, 255, 255, 0.5);
            }

            .prev-btn {
                left: 10px;
            }

            .next-btn {
                right: 10px;
            }

	
    /*----------------------------------------access---------------------------------------------*/
    #access .map {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        z-index: 999;
    }
    #access .map iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100% !important;
        height: 100% !important;
        z-index: 999;
    }
    /*-----------------------------------------contact---------------------------------------*/
    #contact div.btn {
        text-align: center;
    }
    #contact div.btn a {
        background: #404040 url("../img/btn_arrow_w.png") no-repeat top 26px right 20px;
        display: inline-block;
        padding: 18px 5px;
        color: #fff;
        width: 250px;
        text-align: center;
    }
    /*-----------------------------------------policy---------------------------------------*/
    #policy div {
        padding-bottom: 20px;
        font-size: 14pt;
    }
    #policy ol, #policy p {
        padding: 0 28px 50px;
    }
    #policy p:last-child{
        padding: 0 28px 0px;
    }
    #al1, #al2, #al3, #al4, #al5, #al6, #al7, #al8, #al9, #al10, #al11, #al12 {}
}