:root {--contentswidth: 90%;--font_mplus1p: 'M PLUS 1p', sans-serif;}:root {--color3:#d5d0cb;--color_orange:#f90; --color_arc0:#000000;--color_arc1:#eef5ff;--color_arc2:#e6f0ff;--color_arc3:#aaeeaa;--color_arc4:#b09b3f;--color_arc5:#344f93;--color_arc6:#322811;--color_formborder1:#000000; --color_arc7:rgba(60,50,50,0.5); --color_arc8:#583801; --color_arc9:rgba(55,50,50,0.7); }@media screen,print {input[type="submit"],input[type="button"] {border-radius: 0;-webkit-box-sizing: content-box;-webkit-appearance: button;appearance: button;border: none;box-sizing: border-box;cursor: pointer;}input[type="submit"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration {display: none;}input[type="submit"]::focus,input[type="button"]::focus {outline-offset: -2px;}html {background-color: #000;scrollbar-gutter: stable;}body#front {background-color: #000;font-size: 15px;line-height: 1.8em; margin: 0px; padding: 0px;width: 100%; min-width: 300px; color: #fff; position: relative; z-index:-2;}body#front::before {content: "";position: fixed;top: 0;left: 0;width: 100vw;height: 100vh;min-width: 300px; z-index: -1;background-color: #000;background: url(/_images/mainimg1a2.jpg) 0 -5vw / cover no-repeat #000;}@media only screen and ( width < 820px ) {body#front {font-size: 13px;}}html>/**/body#front{overflow:-moz-scrollbars-vertical;}* { box-sizing: border-box; word-break:break-all; }.cf:before,.cf:after { content: " "; display: table; font-size:0; height:0; }.cf:after { clear: both; }.cf { *zoom: 1; }h1,h2,h3,h4,h5,h6,p,ul,li,div,form,input,select,table,td,tr { line-height:1.5em; font-weight:normal; }h1,h2,h3,h4,h5,h6,p,form,input,select { margin:0px;margin-bottom:0px; }p,ul,li,div,form,input,select,table,td,tr { line-height:2.1em; }h1,h2 { font-family:var(--font_mplus1p); font-weight:300; }p { margin:2em 0; }p,li,ul,td,table,tr,th,a { font-size:1em; }ul { margin:0 0 0 0em; padding:0 0 0 0em; text-indent:0em; }li,ol { margin:0; padding:0; }div#wait { position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100dvh !important; background: #000; z-index: 103; display: flex !important; justify-content: center !important; align-items: center !important; transition: opacity 0s, visibility 0s; opacity: 1; visibility: visible;}#loaderOLD {display: inline-block;width: 50px;height: 50px;}#loader {display: inline-block;color: #ccc;font-family: sans-serif;font-size: 12px;letter-spacing: 0.05em;animation: loadingPulse 0.1s ease-in-out infinite alternate;}@keyframes loadingPulse {0% {opacity: 0.2;}100% {opacity: 1;}}.hide { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; transition: opacity 0.5s ease, visibility 1.5s ease !important;}.clearfix { zoom:1;}.clearfix:after { content: ""; display: block; clear: both; }:placeholder-shown { color: #bbb; }::-webkit-input-placeholder { color: #bbb; }:-moz-placeholder { color: #bbb; opacity: 1; }::-moz-placeholder { color: #bbb; opacity: 1; }:-ms-input-placeholder { color: #bbb; }@keyframes fadeIn {0% { display:none; opacity: 0}1% { display:block; opacity: 0}100% { display:block; opacity: 1}}@-webkit-keyframes fadeIn {0% { display:none; opacity: 0}1% { display:block; opacity: 0}100% { display:block; opacity: 1}}@keyframes fadeOut {0% { display:block; opacity: 1}1% { displa:block; opacity: 1}100% { display:none; opacity: 0}}@-webkit-keyframes fadeOut {0% { display:block; opacity: 1}1% { display:block; opacity: 1}100% { display:none; opacity: 0}}.fadein1{-webkit-transition: 1s;-o-transition: 1s;transition: 1s;opacity: 0; }.fadein2{-webkit-transition: 1s;-o-transition: 1s;transition: 1s;opacity: 1;}.fixed {overflow:hidden; }.fadein {animation: fadeIn 1s ease 0s 1 normal forwards;-webkit-animation: fadeIn 1s ease 0s 1 normal forwards;}.fadeout {animation: fadeOut 1s ease 0s 1 normal forwards;-webkit-animation: fadeOut 1s ease 0s 1 normal forwards;}.rotate90a {animation: r1 0.3s linear 0s 1 forwards ;}.rotate90b {animation: r2 0.3s linear 0s 1 reverse ;}@keyframes r1 {0% { transform: rotate(0deg); }100% { transform: rotate(180deg); }}@keyframes r2 {0% { transform: rotate(0deg); }100% { transform: rotate(180deg); }}.rotateopen { transform: rotate(180deg); }.popup { color:#fff; cursor:pointer; }div#popup { position:fixed; top:0; left:0; width:100vw; height:100%; z-index:100; min-width:390px; overflow-y: auto !important; display: none; }div#popup.v1 { display: block !important;background-color:rgba(0,0,0,0.7);}div#popup.v0 {display: none !important;}div#popupinner { display: flex !important;flex-direction: column;justify-content: center; /* 1枚だけの時は画面中央に寄せる */align-items: center;gap: 4vw; width: 90%; min-height: 100%; /* 1枚の時でも中央配置しやすくする */color:#eee; padding: 4vw 0; font-size:12px; line-height:1.5em; position:relative;z-index:100;margin:0 auto;}div#popup img { width: 100% !important; max-width: 100% !important; height: auto !important; max-height: 90vh !important; object-fit: contain; z-index: 300; cursor: pointer; display: block; margin: 0 auto;}div#popup div#popupbox { z-index:300; width:90%; margin:0 auto; }div#popup div#popupbox img#popupimg { width:100%; height:95vh; object-fit: contain; z-index:300; cursor:pointer; margin:0 auto; }img.popup { cursor:pointer; }div[class^="helpbox"] { background:#ffb; color:#222; border:1px solid #dd0; overflow:hidden; margin:0.5em 0; padding:0; font-size:12px; font-weight:normal; line-height:1.5em; }div[class^="helpbox"] .inner { display:block; text-align:left; font-size:12px; line-height:1.5em; margin:0.5em; }div[class^="helpbox"] .inner a { color:#00c; text-decoration:underline; }div[class^="helpbox"] .inner a:hover { color:#f00; }div[class^="helpbox"] .inner p.title { font-weight:bold; font-size:1em; margin:0.7em 0; }#showhidehelp { margin:0 0 1em 0; }.helpicon { display:inline-block; border:1px solid #cc0; width:1.5em; height:1.5em; text-align:center; line-height:1.4em !important; font-size:12px; font-weight:normal; background:#fe0; color:#000; padding:0; margin:0; -webkit-border-radius: 1em;-moz-border-radius: 1em;border-radius: 1em;}.helpaction .helpicon { cursor:pointer; }.h1box { background: var(--color_arc6, #000); position: relative; min-height: 400px; width: 100%; padding: 15vw 0; display: flex; align-items: center;margin: 0;clip-path: inset(0); box-sizing: border-box;}.h1box::before {content: "";position: fixed;top: 0;left: 0;width: 100vw; height: 100vh;z-index: 0;background: url(/_images/mainimg1a2.jpg) 0 -5vw / cover no-repeat #000;will-change: transform;pointer-events: none;}.h1box > * {position: relative;z-index: 1;}.h1box>div { padding-top:30px; transform: scaleY(1.2);}.h1box div.title { line-height:1.3em; font-family:var(--font_mplus1p); color:#fff; font-size:1.5em; font-weight:300; }.h1box div.titlesub { line-height:1.3em; font-family:var(--font_mplus1p); color:#fff; font-size:1.5em; font-weight:300; margin:0.5em 0 0 0; }.h1box h1 { line-height:1.2em; font-family:var(--font_mplus1p); color:#fff; font-size:2.8em; font-weight:300; margin:0px 0 0 0; }.h1box h1 span { display:block; font-size:0.6em; margin:0px 0 0 0; }.h1box_csadmin { background:#058900; }.pagenaviandcontentslist { min-height:0.7em; margin-top:35px; }@media only screen and ( width < 820px ) {.h1box { min-height:150px; }.h1box>div { padding-top:20px; }.h1box div.title { line-height:1.3em; font-size:1.2em; }.h1box div.titlee { line-height:1.3em; font-size:1.2em; }.h1box div.titlesub { line-height:1.3em; font-size:1.1em; }.h1box h1 { line-height:1.1em; font-size:1.8em; }}div.contentsbox div.contentslist { clear:both; padding:0.5em 1.1em 0.6em 0em; color:#fff; }div.contentsbox div.contentslist .item { font-size:0.8em; line-height:1.6em; padding:0.2em 1em; margin:0.1em 0.2em 0.1em 0; display:block; float:left; text-decoration:none; }div.contentsbox div.contentslist a.item { background:var(--color_arc4); color:#fff; }div.contentsbox div.contentslist a.item:hover { background:#fff; color:#000; }div.contentsbox div.contentslist span.item { background:#fff; color:#000; }div.contentsbox div.contentslist div.contentslisttitle { font-size:0.8em; color:#000; margin:0 0 0.3em 0; }ul.helpbox { overflow:hidden; margin:0 !important; padding;0 !important; }ul.helpbox li { padding-left:0 !important; margin-left:1.2em !important; }.helpbutton { display:inline-block; background:#fc0; color:#222 !important; font-size:100%; padding:0.2em 1em 0.2em 1em; vertical-align:middle; text-decoration:none; background: -moz-linear-gradient(top, #fd0, #f90); /*ff*/background: -o-linear-gradient(top, #fd0, #f90); /*opera*/background-image: -webkit-gradient(linear,left bottom, left top, from(#f90), to(#fd0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startcolorstr=#ffdd00, endcolorstr=#ff9900))"; zoom: 1; /* IE8 IE9 */filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#ffdd00,endColorstr=#ff9900); /*IE6 IE7 */background: linear-gradient(to bottom, #fd0, #f90);/* IE10+, W3C */}.helpbutton:hover { color:#f00 !important; }.button_gray { display:block; border:1px solid #ccc; text-align:center; line-height:3em; text-decoration:none; color:#444; margin:0 0 0.2em 0; background: -moz-linear-gradient(top, #fff, #aaa); /*ff*/background: -o-linear-gradient(top, #fff, #aaa); /*opera*/background-image: -webkit-gradient(linear,left bottom, left top, from(#aaa), to(#fff));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startcolorstr=#ffffff, endcolorstr=#aaaaaa))"; zoom: 1; /* IE8 IE9 */filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#ffffffff,endColorstr=#ffaaaaaa); /*IE6 IE7 */background: linear-gradient(to bottom, #fff, #aaa);/* IE10+, W3C */}.button_gray_pressed { display:block; border:1px solid #ccc; text-align:center; line-height:3em; text-decoration:none; color:#444; margin:0 0 0.2em 0; background: -moz-linear-gradient(top, #aaa, #ddd); /*ff*/background: -o-linear-gradient(top, #aaa, #ddd); /*opera*/background-image: -webkit-gradient(linear,left bottom, left top, from(#ddd), to(#999));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startcolorstr=#aaaaaa, endcolorstr=#dddddd))"; zoom: 1; /* IE8 IE9 */filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#aaaaaa,endColorstr=#dddddd); /*IE6 IE7 */background: linear-gradient(to bottom, #888, #ddd);/* IE10+, W3C */}input[type="text"] { position:relative; vertical-align:top; margin: 2px 4px 2px 0; *margin-right:3px; top:0px; line-height:1.6em; font-size:1.2em; padding:0.10em 0.30em 0.00em 0.30em; height:1.6em; border-radius: 0;-webkit-appearance: none;}input[type="password"] { border:1px solid #ddd; position:relative; vertical-align:top; margin: 2px 4px 2px 0; *margin-right:3px; top:0px; line-height:1.6em; font-size:1.2em; padding:0.10em 0.30em 0.00em 0.30em; height:1.6em; border-radius: 0;-webkit-appearance: none;}select { border:0; position:relative; vertical-align:top; margin: 0px 4px 2px 0; *margin-right:3px; top:0px; line-height:1.8em; font-size:1.0em; padding:0.15em 0.30em 0.40em 0.30em; height:2.0em; border-radius: 0;-webkit-appearance: none;}textarea { position:relative; vertical-align:top; margin: 0; line-height:1.6em; font-size:1.2em; padding:0.30em 0.30em 0.30em 0.30em; }input[type="button"] { padding:0 20px; font-size:1.2em; border:0; margin:2px 4px 2px 0; height:1.9em; border-radius: 0;-webkit-appearance: none;}input[type="button"]:active { }input[type="button"]:disabled { color:#aaa; background:#ccc; }input[type="submit"] { padding:0 20px; font-size:1.2em; border:0; margin:2px 4px 2px 0; border-radius: 0;-webkit-appearance: none;}input[type="submit"]:active { }input[type="submit"]:disabled { color:#bbb; background:#eee; }input[type="checkbox"] { border:none; margin-right:2px; }input[type="radio"] { border:none; position:relative; top:-1px; }.front input[type="text"] { border:1px solid var(--color_formborder1); }.front textarea { border:1px solid var(--color_formborder1); }.front label { display:inline-block; vertical-align:middle; cursor:pointer; margin:0 2em 0 0; }.front .label1 { border:1px solid var(--color_formborder1); min-height:2em; background:var(--color_arc3) !important; color:#000; }.front .label0 { border:1px solid var(--color_formborder1); min-height:2em; background:#eee !important; color:#000 !important; }.front .label2 { border:1px solid #f00 !important; background:#fdd !important; color:#000; }.front .c_contact input[type="submit"] { width:100%; margin:1em 0 1em 0; line-height:1em; padding:1em; background:var(--color_arc4); color:#fff; }.front .c_contact input[type="submit"]:disabled { background:#aaa; color:#ccc; }.v0 { display:none; }.v1 { display:block; }.v1f { display:flex; }.b { font-weight:bold; }.note { font-size:90%; line-height:1.5em; }.small { font-size:14px; }.fl { display:block; float:left; }.fr { display:block; float:right; }.red { color:#f00; }.redicon { background:#f00; color:#fff; font-size:0.75em !important; margin:0 3px 0 0; padding:0.0em 0.5em; line-height:1em; vertical-align:middle; }h1 .redicon { font-size: 0.6em !important; }h2 .redicon { font-size: 0.6em !important; }.grayicon { background:#888; color:#fff; font-size:0.75em !important; padding:0.1em 0.5em 0.2em 0.5em; vertical-align:top; }.icon_red { background:#e00; color:#fff; font-size:75%; padding:0.2em 0.5em 0.2em 0.5em; }.icon_green { background:#0a0; color:#fff; font-size:75%; padding:0.2em 0.5em 0.2em 0.5em; }.icon_gray { background:#999; color:#fff; font-size:75%; padding:0.2em 0.5em 0.2em 0.5em; }.blue { color:#5164b6; }.orange { color:#FF9121; }.green { color:#0f0; }.gray { color:#777; }.clear { clear:both; font-size:0px; line-height:0; height:0px; }.clearl { clear:left; }.clearr { clear:right; }a:link { color:#fff }a:visited { color:#fff }a:hover { color:#f00 }.cursorpointer { cursor:pointer; }table td,th { font-size:1em; vertical-align:top; }div#pk { position:relative; overflow:auto; display:block; width:100%; color:#fff; z-index:3; }div.pk1 { background:var(--color_arc6);}div.pk2 { background:var(--color_arc6);}ul.pk { list-style-type:none; margin:0 0 0em -0.2em !important; padding:6px 0 5px 8px !important; font-size:0.8em; overflow:auto; }ul.pk li { float:left; margin:0 7px 0 -0.3em; padding:0 0 0 0; color:inherit; line-height:1.5em; }ul.pk a { color:inherit; }ul.pk a:hover { color:inherit; }.front a.more { display:block; text-align:center; background:var(--color_arc4); color:#fff; margin:0.4em 0 0.2em 0; padding:0em 1em; text-decoration:none; font-size:0.9em; width:8em; float:right; }.front a.more:hover { background:#fff; color:#000; }.front a.more1 { display:block; text-align:center; background:var(--color_arc4); color:#fff; margin:0.4em 0 1em 0; padding:0em 1em !important; text-decoration:none; font-size:0.9em; width:100%; }.front a.more1:hover { background:#fff; color:#000; }.front .more2 { display:inline-block; text-align:center; background:var(--color_arc4); color:#fff; margin:-0.3em 0 0 0; padding:0.1em 0.6em 0.3em 0.6em !important; text-decoration:none; font-size:0.8em; line-height:1em; vertical-align:middle; }.front .more2:hover { background:#fff; color:#000; }.front a.more3 { display:block; text-align:center; background:var(--color_arc4); color:#fff; margin:0.4em 0 1em 0; padding:0em 1em !important; text-decoration:none; font-size:0.9em; width:100%; font-size:0.6em !important; padding:0.2em 0 0.3em 0 !important; line-height:1em !important; width:40% !important; max-width:120px !important; }.front a.more3:hover { background:#fff; color:#000; }div.body { width:100%; margin:0; padding:0; }.front div.c_index div.servicetypebar { font-family:var(--font_mplus1p); font-weight:500; background:var(--color_arc6); padding:10px 0 10px 0; color:#fff; text-align:center; font-size:1.3em; }.front div.c_index div.logobar { background:var(--color_arc6); padding:18px 0 11px 0; color:#fff; text-align:center; }.front div.c_index div.logobar img { vertical-align:middle; display:inline-block; margin:0px 0 5px -10px; width:40vw; max-width:250px; }.front div.c_index div.logobar span { font-size:1.3em; vertical-align:middle; display:inline-block; margin:0 0 4px 1.5em; }.front div.c_index div.top_main_catch { position:relative; border:1px solid #f00; line-height:1.3em; font-family:var(--font_mplus1p); font-size:3.1em; font-weight:500; margin:-100px 0 1em 0; padding:1em; }.front .contentsbox h2 { line-height:1.3em; font-size:2.5em; margin:3em 0 1.7em 0; transform: scaleY(1.2); }.front .contentsbox h2:first-of-type { margin-top:1em; }.front .contentsbox h2+p { }.front div.c_index .contentsbox h2 { transform: scaleY(1.2); margin:0.5em 0 1em 0; }.front div.c_index .contentsbox h2 span { line-height:1.2em; font-size:0.45em; margin:0 0 0.5em 0; display:block; }.front .contentsbox h2 span { line-height:1.2em; font-size:0.6em; margin:10px 0 0em 0; display:block; transform: scaleY(1); }@media only screen and ( width < 1500px ) {.front div.c_index div.top_main_catch { font-size:3.4vw; }}@media only screen and ( width < 1100px ) {.front div.c_index div.top_main_catch { font-size:2.3em; }}@media only screen and ( width < 820px ) {.front div.c_index div.top_main_catch { font-size:2.0em; }.front .contentsbox h2 { font-size:2.1em; }}@media only screen and ( width < 480px ) {.front div.c_index div.logobar span { font-size:1em; margin-left:1em; }.front div.c_index div.top_main_catch { font-size:1.6em; }.front .contentsbox h2 { font-size:1.8em; }}.front div.c_index div.top_services { position:relative; line-height:1.3em; font-family:var(--font_mplus1p); font-size:1em; font-weight:500; margin:0 0 1em 0; padding:4vw; background: rgb(0 0 0 / 50%); text-align:center; }.front div.c_index div.top_services ul { list-style-type:none; margin:2em 0 2em 0; padding:0; display: grid;grid-template-columns: repeat(2, 1fr); /* 横に2等分（2列） */gap: 20px; /* タイル同士の間隔 */}.front div.c_index div.top_services ul li { margin:0; padding:0; width:100%; /* Gridセルいっぱいに広げる */box-sizing: border-box;}.front div.c_index div.top_services ul li span.serviceblock {display: block;height: 100%;padding: 1.5em;background: rgba(255, 255, 255, 0.05); /* うっすら背景を敷いてタイル感（お好みで調整） */border: 1px solid rgba(255, 255, 255, 0.1);color: #fff;text-decoration: none;box-sizing: border-box;transition: background 0.3s ease;font-size;2em; line-height:1.3em; overflow-wrap: normal !important;word-break: normal !important;}.front div.c_index div.top_services ul li span.serviceblock:hover {background: rgba(255, 255, 255, 0.15); /* ホバー時の演出 */}.front div.c_index div.top_services ul li span.serviceblock .more3 {margin:0.5em auto;}.front div.c_index div.top_services ul li .serviceicon { display:flex; justify-content:center; align-items:center; color:#fff; margin:0 auto 1.2em auto; width:50%;max-width:120px; aspect-ratio:1;font-size:1em; }.front div.c_index div.top_services ul li span.servicename { display:block; font-size:0.85em; margin-top: 0.2em;color: #ccc;}.front div.c_index div.top_services a.more1 { display:inline-block; width:50%; margin:0 auto; padding:0.5em 0 !important; }@media only screen and ( max-width: 370px ) {.front div.c_index div.top_services ul { grid-template-columns: 1fr; /* 1列に変更 */gap: 15px; /* 間隔調整 */}}.front div.c_index div.top_ongoingprojects { position: relative; line-height: 1.3em; font-family: var(--font_mplus1p); font-size: 1em; font-weight: 500; margin: 100px 0 1em 0; height: auto; padding: 0em; }.front div.c_index div.top_ongoingprojects h2 { margin: 0; padding: 0; }.front div.c_index div.top_ongoingprojects h2 span { display: inline-block; font-weight: inherit; font-family: inherit; font-size: inherit; }.front div.c_index div.top_ongoingprojects > .topongoingprojectsinner { width: 100%; display: flex; align-items: center; }.front div.c_index div.top_ongoingprojects .block1 { width: 45%; float: left; }.front div.c_index div.top_ongoingprojects .block2 { width: 50%; margin-left: 5%; float: right; aspect-ratio: 1 / 1; cursor: pointer; display: grid;grid-template-columns: repeat(3, 1fr);grid-template-rows: repeat(3, 1fr);gap: 1.5vw;overflow: hidden; }.front div.c_index div.top_ongoingprojects .block2 a { display: block; }.front div.c_index div.top_ongoingprojects .block2 img { width: 100%;aspect-ratio: 1 / 1; object-fit: cover;display: block;}.front div.c_index div.top_ongoingprojects > a.more1 { display: none; }@media only screen and ( max-width: 819px ) {.front div.c_index div.top_ongoingprojects { height: initial; text-align: center; }.front div.c_index div.top_ongoingprojects > .topongoingprojectsinner { width: 100%; display: block; }.front div.c_index div.top_ongoingprojects .block1 { width: 100%; float: none; text-align: center; }.front div.c_index div.top_ongoingprojects .block2 { width: 100%; margin-left: 0; float: none; aspect-ratio: 2 / 1; /* ★ 4列x2行（正方形8個）にフィットするアスペクト比 */cursor: pointer; margin-top: 2em; display: grid;grid-template-columns: repeat(3, 1fr); /* 4列 */grid-template-rows: repeat(3, 1fr); /* 2行 */gap: 2vw;overflow: hidden; aspect-ratio: 1 / 1; }.front div.c_index div.top_ongoingprojects .block2 img { width: 100%;aspect-ratio: 1 / 1; object-fit: cover;display: block;}.front div.c_index div.top_ongoingprojects .block1 a.more1 { display: none; }.front div.c_index div.top_ongoingprojects > a.more1 { display: inline-block; width: 50%; margin: 1.5em auto 0 auto; padding: 0.5em 0 !important; }}.front div.c_index div.top_portfolio { position:relative; line-height:1.3em; font-family:var(--font_mplus1p); font-size:1em; font-weight:500; margin:100px 0 1em 0; padding:0em; text-align:center; overflow:auto; }.front div.c_index div.top_portfolio ul { display: grid;grid-template-columns: repeat(3, 1fr); /* 3列 */gap: 3vw;list-style: none;margin: 0;padding: 0;}.front div.c_index div.top_portfolio ul li {text-align:left; margin:0 0 2vw 0; }.front div.c_index div.top_portfolio ul li:first-child {grid-column: 1 / -1;}.front div.c_index div.top_portfolio ul img {width: 100%;aspect-ratio: 16 / 10;object-fit: cover;display: block;}.front div.c_index div.top_portfolio ul li p { font-size:0.85em; line-height:1.5em; margin:1em 0 0 0; padding:0; }.front div.c_index div.top_portfolio a.more1 { display:inline-block; width:50%; margin:2em auto 0 auto; padding:0.5em 0 !important; }@media only screen and ( max-width: 819px ) {.front div.c_index div.top_portfolio ul { grid-template-columns: repeat(2, 1fr); /* 2列に変更 */gap: 6vw 6vw; /* 必要に応じて上下・左右の余白を調整 */}}.front div.c_index div.top_recruit { position:relative; line-height:1.3em; font-family:var(--font_mplus1p); font-size:1em; font-weight:500; margin:100px 0 1em 0; padding:2em; background: rgb(0 0 0 / 50%); text-align:center; }.front div.c_index div.top_recruit p { text-align:left; }.front div.c_index div.top_recruit a.more1 { display:inline-block; width:50%; margin:0em auto 0 auto; padding:0.5em 0 !important; }.front div.c_index div.top_contact { position:relative; line-height:1.3em; font-family:var(--font_mplus1p); font-size:1em; font-weight:500; margin:100px 0 -90px 0; padding:2em 0 4em 0; text-align:center; }.front div.c_index div.top_contact p { text-align:left; }.front div.c_ongoing ul.ongoinglist { width: 100%;margin: 0 auto;padding: 0;list-style: none;display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: 3vw;}.front div.c_ongoing ul.ongoinglist li { margin:0 0 2em 0; aspect-ratio:16/10; object-fit: cover;display: block;}.front div.c_ongoing ul.ongoinglist li img { width:100%; margin:0 0 1.5vw 0; aspect-ratio:1; object-fit: cover; }.front div.c_ongoing ul.ongoinglist li p { margin:0; font-size:0.9em; line-height:1.5em; } @media only screen and ( width < 1200px ){.front div.c_ongoing ul.ongoinglist { grid-template-columns: repeat(3, minmax(0, 1fr));gap: 5vw;}}@media only screen and ( width < 820px ){.front div.c_ongoing ul.ongoinglist { grid-template-columns: repeat(2, minmax(0, 1fr));gap: 5vw;}}img.portfoliosub { width: 5%; aspect-ratio: 1 / 1; object-fit: cover;cursor: pointer;opacity: 0.6;transition: opacity 0.2s ease;margin-right: 4px;}img.portfoliosub:hover,img.portfoliosub.active {opacity: 1;}div.square-box { width: 100%; height: 0 !important; /* 高さを0にしてpaddingで正方形を作る */padding-bottom: 100% !important; /* これで確実に1:1の正方形になる */position: relative !important;background: #000; border: 1px solid #333; box-sizing: border-box !important;overflow-x: auto !important;overflow-y: hidden !important;touch-action: pan-x pan-y !important;-webkit-overflow-scrolling: touch;scroll-behavior: smooth;-ms-overflow-style: none;scrollbar-width: none;margin: 0 0 1em 0; }div.square-box::-webkit-scrollbar {display: none;}div.square-box.snapping {scroll-snap-type: x mandatory !important;}div.slider-inner {display: flex !important;flex-direction: row !important;flex-wrap: nowrap !important;justify-content: flex-start !important;align-items: stretch !important; position: absolute !important;top: 0 !important;left: 0 !important;width: 100% !important; /* 親の幅に合わせる */height: 100% !important; /* 親の高さに合わせる */box-sizing: border-box !important;padding: 0 !important; margin: 0 !important;gap: 0 !important;}div.square-box img.portfoliomain { display: block !important;margin: 0 !important;width: 100% !important; height: 100% !important;flex-shrink: 0 !important;scroll-snap-align: center; padding: 2vw !important; box-sizing: border-box !important;object-fit: contain; }div.contentsbox { margin:0 0 0px 0; padding:0px; background: rgb(0 0 0 / 60%); }.c_index div.contentsbox { margin:0 0 0px 0; padding:0px; background:none; }div.contentsbox div.layer1title { font-size:1.5em; padding:0; line-height:1em; color:#999; margin:27px 0 0 32px; position:absolute; }div.contentsbox div.h1 { padding:0; margin:0; }div.contentsbox div.h1 img { margin:0; }div.contentsbox ul { margin-left:1.3em; padding:0; }div.contentsbox ol { margin-left:1.3em; padding:0; }div.contentsbox div.inner { margin:0; padding:3em 0em 0em 0em; }div.contentsbox div.inner>p { line-height:2.0em; padding:0; margin:0 0 1em 0; }div.contentsbox h3 { font-size:2.0em; font-weight:300; line-height:1.5em; margin:0.5em 0 1em 0px; padding:1em 0 0 0; clear:both; }div.contentsbox div.inner p.intro { font-size:1.3em; }@media only screen and ( width < 680px ){}@media only screen and ( width < 480px ){}div.contentsbox div.nextpage { text-align:center; margin:5em 0 2em 0; }.front div.c_index .contentsbox { padding:0 0 0em 0; margin:0 0 2em 0; }.front div.c_index .contentsbox h2.bar { margin: 0 0 1.2em 0; background:#1e3e75; color:#fff; padding:0.3em 0.7em; line-height:1.5em; font-size:1em; font-weight:normal; }.front div.c_index .contentsbox_company { clear:both; margin:2em 0 4em 0; overflow:auto; }.front div.c_index .contentsbox_company img { width:35%; max-width:150px; aspect-ratio:1; object-fit:cover; object-position:60% 50%; float:left; margin:5px 1em 0.5em 0em; cursor:pointer; }.front div.c_index div[class^="contentsbox_"] div.contentsbox { width:50%; color:#fff; background: rgba(0,0,10,0.7); padding:30px 30px 20px 30px; overflow:auto; }.front div.c_index div[class^="contentsbox_"] div.contentsbox h2 { margin:0; padding:0; }.front div.c_index div[class^="contentsbox_"] div.contentsbox ul { list-style-type:none; margin:20px 0 0 0; padding:0; overflow:auto; }.front div.c_index div[class^="contentsbox_"] div.contentsbox ul li { float:left; text-indent:0; margin:0 10px 10px 0; padding:0 0 0 0em; width:calc( ( 100% - 20px ) / 3 ); aspect-ratio:1; background:#000; color:#fff; display:flex; justify-content: center; align-items:flex-end; }.front div.c_index div[class^="contentsbox_"] div.contentsbox ul li:nth-child(3n) { margin-right:0; }.front div.c_index div[class^="contentsbox_"] div.contentsbox ul li span { font-weight:bold; font-size:0.8em; display:block; width:100%; line-height:1.3em; text-align:center; background: rgba(255,255,255,0.8); padding:3px 0 0 0; margin-bottom:0; color:#000; }@media only screen and ( width < 820px ){.front div.c_index div[class^="contentsbox_"] div.contentsbox { width:100%; color:#fff; background: rgba(0,0,10,0.6); padding:6vw 6vw 3vw 6vw; margin:0; overflow:auto; }}.front div.c_index .contentsbox_about img.about { float:right; width:210px; margin:0 0 20px 20px; }.front div.c_index .contentsbox_about img.about_sm { display:none; }@media only screen and ( width < 480px ){.front div.c_index .contentsbox_about img.about { display:none; }.front div.c_index .contentsbox_about img.about_sm { display:block; clear:both; float:right; width:45%; margin:0 0 20px 20px; }}div.openclose { width:1.8em; height:1.8em; margin:0em 0.5em 0.3em 0; background:#ccc; float:left; }div.openclose img.openclose { width:100%; }.front div.c_index .contentsbox_menu { clear:both; }.front div.c_index .contentsbox_menu ul { margin:0; padding:0; list-style-type:none; }.front div.c_index .contentsbox_menu li { clear:both; margin:0 0 2em 0; }@media only screen and ( 480px < width < 980px ) {.front div.c_index .contentsbox_menu li { clear:both; width:calc( ( 100% - 4vw ) / 2); display:inline-block; vertical-align:top; margin:0 4vw 3vw 0; }.front div.c_index .contentsbox_menu li:nth-child(2n) { margin-right:0; }}.front div.c_index .contentsbox_menu h3 { clear:both; margin:0.6em 0 0.5em 0; display:inline; line-height:1.3em; }.front div.c_index .contentsbox_menu p { font-size:0.9em; line-height:1.6em; margin:1em 0 1em 0; }.front div.c_index .contentsbox_menu p.p2 { font-size:0.8em; margin:1em 0 0 0em; }.front div.c_index .contentsbox_menu a.imgr { float:right; margin:0em 0 1em 1em; width:40%; max-width:180px; display:block; }.front div.c_index .contentsbox_menu a.imgr img { width:100%; }.front div.c_recruit h2 { margin:0 0 1em 0; }.front div.c_recruit h3 { }.front div.c_recruit h4 { font-size:1.3em; margin:10px 0; }.front div.c_recruit p { }.recruit-menu {display: flex;flex-wrap: wrap;gap: 10px;margin-bottom: 40px;}.recruit-menu a {display: block;padding: 0.5em 1em;text-decoration: none;transition: 0.2s ease;background:var(--color_arc4); color:#fff; }.recruit-menu a:hover {background: #fff;color: #000; }.front div.c_recruit h2[id] {scroll-margin-top: 100px;}.recruit-table {width: 100%;border-collapse: collapse;border: 1px solid #555;margin-bottom: 40px;font-size:1em;}.recruit-table th {padding: 0.5em;border: 1px solid #333;text-align: left;vertical-align: top;line-height: 1.8;text-align:right;color:#b09b3f;width: 28%;background: rgb(0 0 0 / 50%);}.recruit-table td {padding: 0.5em;border: 1px solid #555;text-align: left;vertical-align: top;line-height: 1.8;width: 72%;}.recruit-table .recruit-table-heading th {padding:0 0.3em; width: auto;border:1px solid #555; background:var(--color_arc6);color: #fff;font-weight: bold;text-align: left;}@media (max-width: 767px) {.recruit-table th,.recruit-table td {display: block;width: 100%;box-sizing: border-box;}.recruit-table th {border-bottom: 0;text-align:center;}.recruit-table td {}.recruit-table .recruit-table-heading th {display: table-cell;width: auto;border-bottom: 1px solid #555;text-align: left;}}.front div.c_faq h2 { margin-top:2em; }.front div.c_faq .qabox { margin:0 0 0.7em 0em; line-height:1.8em; border:1px solid #ddd; }@media only screen and ( width < 480px ){}.front div.c_faq .qabox div.q { font-family:initial; font-weight:normal; line-height:1.3em; font-size:1em; margin:0 0 0 0; cursor:pointer; padding:0.7em; flex: 1; background:var(--color_arc1); }.front div.c_faq .qabox div.qno { width:3.5em; text-align:center; display:inline-block; padding:0.4em 0em; margin:0 0 0 0; display:flex; justify-content: center; align-items:center; cursor:pointer;background:var(--color_arc4); color:#fff;}.front div.c_faq .qabox div.opencloseicon { float:right; display:inline-block; text-align:center; line-height:1.5em; padding:2px 0; width:20px; background:var(--color_arc4); color:#fff; margin-right:1px; cursor:pointer; }.front div.c_faq .qabox div.opencloseicon img { width:80%; }.front div.c_faq .qabox .slidebox { font-size:0.9em; margin:0em 0 0em 0; padding:0px 0 0px 0; overflow:hidden; background:#fff; }.front div.c_faq .qabox .slideboxinner { margin:0em 0.3em 0em 0em; padding:1em; padding-left:1.5em; line-height:1.7em; }.front div.c_faq .openclosebutton { text-align:right; }.front div.c_faq .openclosebutton input { font-size:1em; display:inline-block; line-height:1.5em; height:3em; padding:0; width:120px; }.front div.c_faq .openclosebuttons { text-align:right; margin:20px 0 -20px 0; font-size:0.8em; }.front div.c_faq .openclosebuttons div { display:inline-block; text-align:center; line-height:1.5em; padding:5px 0; width:100px; background:var(--color_arc4); color:#fff; margin-right:1px; cursor:pointer; }.front div.c_faq .openclosebuttons div span { display:inline-block; vertical-align:middle; }.front div.c_faq .openclosebuttons div img { display:inline-block; vertical-align:middle; width:1.2em; margin:0 3px 0 0; }.front div.c_faq .openclosecategorybuttons { float:right; text-align:right; margin:-70px 0 0 0; font-size:0.8em; }.front div.c_faq .openclosecategorybuttons div { display:inline-block; text-align:center; line-height:1.5em; padding:5px 0; width:25px; background:var(--color_arc4); color:#fff; margin-left:2px; cursor:pointer; }.front div.c_faq .openclosecategorybuttons div img { display:inline-block; vertical-align:middle; width:1.2em; margin:0 0 0 0; }.front .contentswidth { width:90%; margin:0 auto; max-width:1500px; }.front .caption { font-size:0.8em; }.front .imgl { float:left; margin:0 2em 2em 0; }.front .imgr { float:right; margin:0 0 2em 2em; width:48%; }.front .linetable.menupage { width:48%; }@media only screen and ( width < 1000px ) {.front img.imgr { width:100%; }.front .linetable.menupage { width:100%; }}.front img.cmainimg { width:100%; margin:0 0 20px 0; }@media only screen and ( width < 480px ){.front img.cmainimg { width:100%; margin:0 0 0px 0; }}.front .morecontents { overflow:hidden; }span.servicetypeicon { display:block; margin:0em 0 5px 0; font-size:0.7em; line-height:1em; }span.servicetypeicon span { display:inline-block; line-height:1em; margin:0 0 3px 0; padding:0.3em 0.3em; width:78px; color:#fff; text-align:center; }span.servicetypeicon span.servicetypespot { background:#3d8cd3; }span.servicetypeicon span.servicetypeseason { background:#49c642; }span.servicetypeicon span.servicetypeset { background:#ff9700; }span.servicetypeicon span.servicetypecompany { background:#bd50c7; }span.servicetypeicon span.servicetypehome { background:#915edd; }h3+span.servicetypeicon { margin-top:-1em; margin-bottom:10px; }.front .c_services h3:first-of-type { padding-top:0; clear:none; }.front .c_services h3 { clear:none; }.front div.services { clear:both; margin:0 0 2em 0; overflow:auto; width:100%; padding:2em 1.5em 1em 1.5em; cursor:pointer; background: var(--color_arc7);}.front div.services div { width:calc( 100% - 150px - 1.5em ); float:right; }.front div.services div a { float:right; display:inline-block; text-align:center; background:var(--color_arc4); color:#fff; margin:0.5em 0 0em 1em; padding:0em 0.4em; text-decoration:none; font-size:0.9em; line-height:1.8em; }.front div.services div a:hover { background:#f00; color:#fff; }.front div.services h3 { font-size:2em; line-height:1.3em; clear:none; margin-top:5px; padding-top:0; transform: scaleY(1.2); }.front div.services h3 span { display:block; font-size:0.7em; transform: scaleY(1); }.front div.services h4 { font-size:1em; line-height:1.7em; width:100%; margin-bottom:10px; }.front div.services p { }.front div.services div.morecontents { clear:both; width:100%; margin:0px 0 0 0; background:var(--color_arc1); }.front div.services img { width:40%; max-width:200px; margin:0 0 1em 1.5em; float:right; }.front div.serviceslist { float:none; display:block; width:100%; text-align:center; }.front div.serviceslist img.serviceicon { display:inline-block; width:10%; margin:0 5%; float:none; }.front .c_services .serviceicon { width:30%; max-width:200px; aspect-ratio:1/1; float:right; color:#fff; margin:0 0 1em 2em; display:flex; justify-content: center; align-items:center; }.front .c_services div.serviceicontitle { margin:2em 0 6.5em 0; }.front .c_services div.serviceicontitle .serviceicon { width:60%; max-width:300px; aspect-ratio:1/1; float:none; color:#fff; margin:0 auto 3em auto; display:flex; justify-content: center; align-items:center; }.front .c_services div.serviceicontitle h3 { text-align:center; font-size:2em; line-height:1.3em; clear:none; margin-top:5px; padding-top:0; transform: scaleY(1.2); overflow-wrap: normal !important; word-break: normal !important; }.front .c_services div.serviceicontitle h3 span { display:block; font-size:0.7em; transform: scaleY(1); }@media only screen and (width < 880px) {.front .c_services .serviceicon { width:45%; max-width:200px; aspect-ratio:1/1; float:none; color:#fff; margin:0 auto 3em auto; display:flex; justify-content: center; align-items:center; }}@media only screen and (width < 480px) {}.front div.services .more3 { font-size:0.8em !important; }.front ul.pageindex { list-style-type:none; margin:2em 0 1em 0em !important; padding:1em 0.8em 0.8em 1em !important; overflow:auto; background:#222; }.front ul.pageindex a { color:#bbf; }.front ul.pageindex li { margin:0 1em 0em 0; padding:0 0 0 1.6em; text-indent:0; display:inlline-block; font-size:0.9em; background-image:url(/_images/listicon.jpg);background-repeat:no-repeat ;background-size: 16px 16px;background-position:0px 4px;}.front .c_faq ul.pageindex li { float:left; }.front ul.pageindex li.listtitle { float:none; font-size:0.9em; list-style-type:none; background:var(--color_arc6); color:#fff; margin:-1em -0.9em 0.8em -1.8em; padding:0.1em 0.7em 0 1.4em; position:absoulte; }.front .areamap h3 { clear:none; margin:1em 0 !important; padding:0; }.front .areamap img { width:100%; border:1px solid #ccc; margin:20px 0 0 0; }.front .areamap ul { list-style-type:none; margin:0 0 0 0; overflow:auto; }.front .areamap ul li { width:calc(( 100% - 40px ) / 4 ); display:inline-block; margin:0 5px 5px 0; padding:0.3em 0.5em; font-size:0.9em; text-indent:0; border:1px solid #ddd; text-align:center; background:#fff; }@media only screen and ( width < 700px ){}@media only screen and ( width < 480px ){}.front div.targetedfacilities h3 { clear:none; margin:0em 0; padding:0; }.front div.targetedfacilities ul:nth-of-type(1) { list-style-type:none; margin:20px 0 20px 0; padding:0; overflow:auto; }.front div.targetedfacilities ul:nth-of-type(1) li { float:left; text-indent:0; margin:0 10px 10px 0; padding:0 0 0 0em; width:calc( ( 100% - 50px ) / 5 ); aspect-ratio:1; background:#000; color:#fff; display:flex; justify-content: center; align-items:flex-end; }.front div.targetedfacilities ul:nth-of-type(1) li:nth-child(5n) { }.front div.targetedfacilities ul:nth-of-type(1) li span { display:block; width:100%; line-height:1.3em; text-align:center; font-size:0.8em; background: rgba(255,255,255,0.8); padding:5px 0 5px 0; margin-bottom:0; color:#000; }@media only screen and ( width < 700px ){.front div.targetedfacilities ul:nth-of-type(1) li { width:calc( ( 100% - 40px ) / 4 ); }}@media only screen and ( width < 480px ){.front div.targetedfacilities ul:nth-of-type(1) li { width:calc( ( 100% - 30px ) / 3 ); }}.front div.targetedfacilities ul:nth-of-type(1) li.company { background:url(/_images/c-targetedfacilities_company.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.factory { background:url(/_images/c-targetedfacilities_factory.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.warehouse { background:url(/_images/c-targetedfacilities_warehouse.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.datacenter { background:url(/_images/c-targetedfacilities_datacenter.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.shoppingcenter { background:url(/_images/c-targetedfacilities_shoppingcenter.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.shop { background:url(/_images/c-targetedfacilities_shop.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.school { background:url(/_images/c-targetedfacilities_school.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.mansion { background:url(/_images/c-targetedfacilities_mansion.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.apartment { background:url(/_images/c-targetedfacilities_apartment.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.parking { background:url(/_images/c-targetedfacilities_parking.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.house { background:url(/_images/c-targetedfacilities_house.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.villa { background:url(/_images/c-targetedfacilities_villa.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(1) li.michinoeki { background:url(/_images/c-targetedfacilities_michinoeki.jpg) 0% 0 ; background-size:cover; }.front div.targetedfacilities ul:nth-of-type(2) { list-style-type:none; margin:20px 0 0 0; padding:0; overflow:auto; }.front div.targetedfacilities ul:nth-of-type(2) li { width:calc( (100% - 18px ) / 3 ); display:inline-block; margin:0 6px 6px 0 ; font-size:0.8em; background:#fff; padding:0.3em 0.1em; text-indent:0; border:1px solid #ddd; text-align:center; }@media only screen and ( width < 700px ){.front div.targetedfacilities ul:nth-of-type(2) li { width:calc( (100% - 12px ) / 2 ); }}.front ul.targetedplaces { list-style-type:none; margin:20px 0 0 0; padding:0; overflow:auto; font-size:0.8em; }.front ul.targetedplaces li { width:calc( (100% - 24px ) / 4 ); display:inline-block; margin:0 6px 6px 0 ; background:#fff; font-size:0.8em; padding:0.3em 0.1em; text-indent:0; border:1px solid #ddd; text-align:center; }@media only screen and ( width < 700px ){.front ul.targetedplaces li { width:calc( (100% - 18px ) / 3 ); }}.front div#contactbutton { width:100%; margin:0px 0 0 0;padding:20px 0; }.front .contactbutton1 { background:rgba(0,0,20,0.5); animation: bgfadein 0.5s forwards; }.front .contactbutton2 { background:rgba(0,0,20,0.0); animation: bgfadeout 0.5s forwards; }@keyframes bgfadeout {0% { background-color: rgba(0,0,20,0.5);}100% { background-color: rgba(0,0,20,0.0);}}@keyframes bgfadein {0% { background-color: rgba(0,0,20,0.0);}100% { background-color: rgba(0,0,20,0.5);}}.front div#contactbutton a { display:block; background:var(--color_arc4); color:#fff; font-size:1em; line-height:1.5em; text-decoration:none; padding:0.5em; cursor:pointer; text-align:center; width:90%; margin:0 auto; max-width:1500px; }.front div#contactbutton a:hover { background:#fff; color:#000; }.front div#contactbutton a:hover img { filter: brightness(0);}.front div#contactbutton a span { vertical-align:middle; display:inline; } .front div#contactbutton a img { vertical-align:middle; display:inline; width:30px; margin-right:0.5em; } .front table.pricelist th { width:20%; max-width:250px }.front table.pricelist td:nth-of-type(2) { width:30%; }@media only screen and ( width < 700px ){.front table.pricelist th { width:20% }.front table.pricelist td:nth-of-type(2) { width:40%; }}.front .c_company table th { width:20%; padding-right:0.5em; }.front .c_company h2:first-child { text-align:center; margin-top:1.5em; }.front .c_company h2 { text-align:center; margin-top:3.5em; }.front .c_company div.philosophy { margin:3em 0; }.front .c_company div.philosophy div { width:100%; margin:1em auto 2em auto; padding:1em 2.5em 0.1em 2.5em; background: var(--color_arc7); }.front .c_company div.philosophy div h3 { text-align:center; margin:0; padding:0; }.front .c_company div.philosophy div p { margin-top:1em; }.front .c_company .ceo { text-align:right; margin:0 0 20px 0; font-size:1.1em; }.front .c_company .ceo span:nth-of-type(1) { display:block; font-size:1.6em; margin:2px 0 0 0; }.front .c_company .ceo span:nth-of-type(2) { display:block; font-size:0.66em; margin:0px 0 0 0; }.front .c_company .ceosign { margin-top:50px; }.front .c_company .ceoimg { width:88px; float:right; margin:0 0 0 1.3em; }#front .map-wrap { width:100%; height:500px; margin-top:1em; }#front .map-wrap iframe { width:100%; height:100%; border:0; }@media screen and (max-width: 800px) {#front .map-wrap { height:initial; aspect-ratio: 1 / 1; }}.flexalign {display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-webkit-flex-wrap:wrap;-moz-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}.front div.c_contact p.phoneblock { font-size:1.35em; margin:0 0 0.3em 0; }.front div.c_contact span.icon_tel { display:inline-block; line-height:1em; padding:0.3em 1em; margin:0.5em 1em 0.5em 0; background:#0a0; color:#fff; vertical-align:middle; }.front div.c_contact span.phonenumber { display:inline-block; font-size:2em; margin:0 0 0 0; font-family:var(--font_mplus1p); font-weight:500; vertical-align:middle; }.front div.c_contact p.phoneblockcomment { margin:0 0 2em 0; font-size:0.9em; }.front div.c_contact ul.note { margin:0 0 2em 0; padding:0 0 0 1em; font-size:100%; }.front div.c_contact textarea { width:100%; margin:0; padding:0.5em; height:calc( ( 1.3em * 10 ) + 0.6em ); }.front div.c_contact input[type='text'] { width:100%; margin:0 0 1em 0; padding:1em 0.5em; }.front div.c_contact .en { display:block; font-size:0.85em; color:#99; }.front div.c_contact .contacttype { margin:0 0 30px 0; }.front div.c_contact .servicetype { margin:0 0 30px 0; }.front div.c_contact .formblocktitle { background:var(--color_arc6); color:#fff; text-align:left; margin:10px 0 20px 0; padding:0 5px; }.front div.c_contact th { text-align:right; width:20%; }.front div.c_contact label { display:inline-block; width:calc( ( 100% - 20px ) / 4 ); line-height:1.2em; vertical-align:middle; cursor:pointer; margin:0 5px 5px 0; padding:0.9em 0.5em 0.8em 1.5em; text-indent:-0.9em; }@media only screen and ( width < 820px ){.front div.c_contact label { width:calc( ( 100% - 15px ) / 3 ); }.front div.c_contact textarea { height:calc( ( 1.3em * 8 ) + 0.9em ); }}@media only screen and ( width < 480px ){.front div.c_contact label { width:calc( ( 100% - 10px ) / 2 ); }}.front div.c_cprivacypolicy { }.front div.c_cprivacypolicy h3 { text-indent:0; }div.agreementlist { margin-left:0px; }div.agreementlist * { line-height:1.6em !important; }div.agreementlist { counter-reset: data-num; }div.agreementlist ul { margin:0 0 0 1em !important; padding:0 0 0 1em; }div.agreementlist li { margin:0; padding:0; text-indent:0; }div.agreementlist h3 { font-size:1.5em; margin: 1em 0 0.5em 0px; }div.agreementlist h3::before { counter-increment: data-num; content: counter(data-num)". ";}.front .c_blog div.blogcontentsarea { width:100%; margin:0em 0 0 0; }div#blogsubcontentsarea { width:25%; float:right; margin:0em 0 0 0; }div.blogsubcontentsarea h2 { background:#0a285b; color:#fff !important; font-size:1.2em !important; text-align:center; font-weight:normal; line-height:2em; padding:0.5em 0 !important; border:0 !important; }div.blogsubcontentsarea h3 { margin:0.8em 0 -0.3em 0; color:#888; text-align:center; }div.blogsubcontentsarea ul { margin:1em 0 1em -0.5em; padding:0; list-style-type:none; }div.blogsubcontentsarea li { font-size:0.9em; margin:0em 0 2px 0.5em; line-height:1.3em !important; }div.blogsubcontentsarea li a { }div.blogsubcontentsarea li span { line-height:inherit; }div.blogsubcontentsarea li .slabel { padding:0.7em 0.5em; display:block; text-decoration:none; }div.blogsubcontentsarea li .slabel span { float:right; }div.blogsubcontentsarea li .slabel input { display:none; }div.blogsubcontentsarea li .slabel0 { background:#eee; color:#bbb; cursor:default; }div.blogsubcontentsarea li .slabel1 { background:#eee; }div.blogsubcontentsarea li .slabel2 { background:#ff0; }div#smblogsubcontentsbox { display:none; }@media only screen and ( width < 880px ){div#smblogsubcontentsbox { display:block; margin:20px 0 -20px 0; position:relative; width:90vw; }.smblogsearch { background:#fafa00; padding:0.6em 0.6em 0.6em 0.6em; font-size:1em; overflow:auto; line-height:1.3em; vertical-align:middle; }.smblogsearch span { float:left; }.smblogsearch .icon_search { font-size:1.3em; float:left; padding:0.2em; height:18px; width:18px; border:0; margin:0 3px 0 0; background-image:url(/_images/icon_search.svg) ; background-repeat:no-repeat; background-size:0.8em; background-position:2px 3px ; }.smblogsearch .searchtitle { float:left; margin:2px 5px 0 0; }.smblogsearch span.searchitem { background:#fafa00; border:1px solid #bda700; display:inline-block; margin:1px 3px 1px 0px; padding:0 0.3em; font-size:0.8em; float:left; }.front .c_blog div.blogcontentsarea { width:100%; float:none; margin:0em 0 0 0; }div#blogsubcontentsarea { width:100%; float:none; margin:0em 0 0 0; }div#blogsubcontentsarea div#blogsubcontentsarea_search { display:none; }#popupinner div.blogsubcontentsarea { background:#fff; padding:20px; }div.blogsubcontentsarea { background:#fff; padding:0px; }div.blogsubcontentsarea ul { width:100%; margin-left:0; padding-left:0; display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-webkit-flex-wrap:wrap;-moz-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}div.blogsubcontentsarea li { margin:0; width:calc( ( 100% - 2px ) / 2 ); float:left; margin:0 2px 2px 0; display:table; }div.blogsubcontentsarea li:nth-child(2n){ margin-right:0; }div.blogsubcontentsarea li .slabel { display:block; width:100%; height:100%; display:table-cell; vertical-align:middle; padding:1em 1em 0.7em 1em; line-height:1; }}.front .date { display:inline; text-align:right; font-size:1em; }.front .date span { vertical-align:middle; font-size:1em; }.front .date span.itemicon { background:#aaa; color:#fff; font-size:0.75em !important; margin:0 3px 0 0; padding:0.0em 0.5em; line-height:1em; vertical-align:middle; }.front .date img.moreicon { float:right; width:20px; }.front ul.bloglist { margin:0; padding:0; list-style-type:none; overflow:auto; font-size:0; }.front ul.bloglist li { font-size:14px; margin:0; padding:0; width:calc( ( 100% - 54px ) / 4 ); display:inline-block; vertical-align:top; margin:0 18px 30px 0; }.front ul.bloglist li:nth-child(4n) { margin-right:0; }.front ul.bloglist li:nth-child(9) { display:none; }.front ul.bloglist li h2 { font-weight:normal; font-size:1em; }@media only screen and ( width < 700px) {.front ul.bloglist li { width:calc( ( 100% - 36px ) / 3 ); margin:0 18px 30px 0; }.front ul.bloglist li:nth-child(3n) { margin-right:00px; }.front ul.bloglist li:nth-child(4n) { margin-right:18px; }.front ul.bloglist li:nth-child(9) { display:inline-block; }}@media only screen and ( width < 480px ) {.front ul.bloglist li { width:calc( ( 100% - 18px ) / 2 ); margin:0 18px 30px 0; }.front ul.bloglist li:nth-child(2n) { margin-right:00px; }.front ul.bloglist li:nth-child(9) { display:none; }}.front ul.bloglist3 { width:100%; margin:0px 0 0 0; padding:0; list-style-type:none; overflow:auto; font-size:0.95em; }.front ul.bloglist3 li { margin:0; padding:0; width:100%; margin:0 0 1em 0; padding:1em 0 0.6em 1em; background:#fff; border:1px solid #e0e0e0; cursor:pointer; text-indent:none; overflow:auto; }.front ul.bloglist3 li:last-of-type { margin:0 0 0em 0; }.front ul.bloglist3 li .more { float:right; } .front ul.bloglist3 li .inner { float:left; width:calc( 100% - 140px - 1em ); margin:0 0 0px 0; padding:0px; overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 5;min-height: 8.5em;}.front ul.bloglist3 li h2 { font-size:1.2em !important; font-weight:normal; margin:0.2em 0 0.1em 0 !important; padding:0 !important; clear:none !important; }.front ul.bloglist3 li h3 { font-size:1.2em !important; font-weight:normal; margin:0.2em 0 0.1em 0 !important; padding:0 !important; clear:none !important; }.front ul.bloglist3 li img.blogimg { float:left; width:30%; max-width:120px; margin:0 1em 0.3em 0; border:1px solid #ccc; }.front ul.bloglist3 li p { font-size:1em; line-height:1.6em; font-weight:normal; margin:0; }@media only screen and (width < 880px) {.front ul.bloglist3 { font-size:0.95em; }.front ul.bloglist3 li .inner { -webkit-line-clamp: 5; min-height: 8.5em;}}@media only screen and (width < 480px) {.front ul.bloglist3 { font-size:0.9em; }.front ul.bloglist3 li .inner { width:calc( 100% - 30% - 2em );-webkit-line-clamp: 6; min-height: 8em;}}.front .c_blog ul.latestposts { list-style-type:none; margin:0; padding:0; }.front .c_blog ul.latestposts li { clear:both; margin:10px 0 0 0em; padding:0; font-size:0.9em; }.front .c_blog ul.latestposts a { font-size:inherit; line-height:1.7em; }.front .c_blog ul.latestposts .imgsquare { max-width:50px; width:25%; float:left; margin:0.2em 5% 10px 0; }.front .c_blog ul.latestposts img { }@media only screen and ( width < 880px ){.front .c_blog ul.latestposts li { margin:10px 5% 0 0; width:calc( ( 100% - 5% ) / 2 ); }.front .c_blog ul.latestposts li:nth-child(2n) { margin-right:0; }.front .c_blog ul.latestposts .imgsquare { margin:0.2em 2% 10px 0; }}.front .c_blog a.oldblog { display:block; text-align:center; margin:0em 0 0em 0; }.front .c_blog form.blogsearch { margin:0em 0 0em; font-size:12px; overflow:auto; }.front .c_blog form.blogsearch input.searchreset { width:100%; margin:-0.5em 0 1em 0; padding:0.8em 0.3em; height:40px; cursor:pointer; }.front .c_blog form.blogsearch input[type='text'] { position:relative; display:inline-block; padding:0 2.1em 0 0.5em; margin:0; height:40px; width: calc( 100% - 60px ); -webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0;border:none; }.front .c_blog form.blogsearch a.reset { position:relative; display:inline-block; text-align:center; padding:0 ; margin:0 0 0 -30px; width:30px; color:#aaa; text-decoration:none; font-size:1.5em; height:40px;-webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0;}.front .c_blog form.blogsearch input[type='submit'] { position:relative; display:inline-block; padding:0; margin:0; width:60px; height:40px;-webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0;color:#222; background:{{COLOR_BRANDCOLOR_CARE4}}; border:1px solid #eee; -webkit-appearance: none;border-radius: 0;}.front .c_blog .searchboxactive0 { width:100%; font-size:1.2em; margin-bottom:1px; background:#eee; }.front .c_blog .searchboxactive1 { width:100%; font-size:1.2em; margin-bottom:1px; background:#ff0; }.front .c_blog .kwsearch { margin:1em 0; }.front .c_blog .searchstatus { padding:0.2em 0.5em; margin: -3.6em 0 4em 0; background:#ff0; color:#000; }.front .c_blog .searchstatus a { color:#000; text-decoration:underline; }.front .c_blog .searchstatus a.reset { color:#999; text-decoration:none; }.front .c_blog div.message_movie { float:none; clear:both; width:100%; position: relative; aspect-ratio: 16 / 9; margin:2em 0; }@media only screen and ( width < 880px ){.front .c_blog div.message_movie { float:none; width:100%; margin:2em 0; }}body#admin li.addedbox div.message_movie { width:250px !important; margin:0 0 10px 0; border:0; }.imgsquare { }.imgsquare { display:block;position: relative;float:left;margin:0.2em 2.3em 0em 0em ; }.imgsquare::before { content: "";display: block;padding-top: 100%;}.imgsquare img { position: absolute;width: 100%;height: 100%;top: 0;right: 0;bottom: 0;left: 0;margin: auto;object-fit: cover;}.pagebottomblogareabg { margin:5em 0 -5em 0; padding:1em 0; background:#fcf9f7; }#pagebottomblogarea { clear:both; margin:0em 0 0 0; }#pagebottomblogarea a.morebutton { float:right; margin:-4.2em 0 0 0; }#pagebottomblogarea div.bloglistarea { width:100%; }#pagebottomblogarea div.bloglistbox { line-height:1.8em; margin:0 40px 40px 0; overflow:hidden; width:288px; height:330px; float:left; border:1px solid {{NEWSBOX1}}; background:#fff; }#pagebottomblogarea div.bloglistbox .inner { padding:0em; }#pagebottomblogarea div.bloglistbox h3 { font-weight:normal; font-size:1.1em; line-height:1.5em; height:2em; overflow:hidden; margin:0 0 0em 0; background:{{NEWSBOX1}}; padding:0.8em; }#pagebottomblogarea div.bloglistbox h3 a { font-weight:normal; font-size:1.0em; }#pagebottomblogarea div.bloglistbox div.date { text-align:left; line-height:1.5em; font-size:0.9em; margin:0em 0 0em 0; background:#f9f3ec; padding:0.5em 1em; }#pagebottomblogarea div.bloglistbox div.message { width:90%; font-size:1em; line-height:1.7em; height:13em; overflow:hidden; margin:1em auto 0 auto; }#pagebottomblogarea div.bloglistbox div.message img { float:right; margin:0.3em 0.3em 0.5em 1.2em ; }div#blogarticledetails { width:100%; }div#blogarticledetails div.pnavi { margin:25px 0 10 0; text-align:center; }div#blogarticledetails div.titlebox { margin:0px 0 15px 0; }div#blogarticledetails div.titlebox div.category { font-size:0.9em; color:#888; margin:0 0 5px 0; color:{{COLOR1}} !important; }div#blogarticledetails div.titlebox h1 { font-size:2.1em; margin:0em 0 0em 0; padding:0; font-weight:normal; color:#5c5233; border:0; }div#blogarticledetails div.titlebox h2 { }div#blogarticledetails div.articleoptions { margin:10px 0 20px 0; padding:3px 0; background:#f0f0f0; }div#blogarticledetails div.articleoptions div.inner { font-size:85%; text-align:left; color:#999; margin:0 10px; }div#blogarticledetails div.message { margin:0px 0 0 0px; }div#blogarticledetails div.caption { font-size:85%; line-height:1.4em; }div#blogarticledetails { }div#blogarticledetails div.message div.border { display:inline; display:block; }div#blogarticledetails div.message h2.message_header { font-size:1.4em; margin:2.5em 0 1em 0; font-weight:normal; clear:both; padding:0 0 0.5em 0; border-bottom:1px solid #aaa; text-align:left; display:block; }div#blogarticledetails div.message div.message_paragraph { display:inline; word-wrap:break-word; }div#blogarticledetails div.message div.message_uploadfile0 { margin:2em 0; }div#blogarticledetails div.message div.message_uploadfile0 .blogimgr { width:45%; float:right; }div#blogarticledetails div.message div.message_uploadfile0 .blogimgl { width:45%; float:left; clear:both; }div#blogarticledetails div.message div.message_uploadfile0 .blogimgc { width:45%; margin:0 auto; }div#blogarticledetails div.message div.message_uploadfile1 { display:inline; }div#blogarticledetails div.message div.message_uploadfile1 { margin:60px 0; }div#blogarticledetails div.message div.message_uploadfile1 .blogimgr { width:45%; float:right; margin:0 0 40px 40px; }div#blogarticledetails div.message div.message_uploadfile1 .blogimgl { width:45%; float:left; margin:0 40px 40px 0; clear:both; }div#blogarticledetails div.message div.message_uploadfile1 div.clear { display:inline; }div#blogarticledetails div.message .blogimgw50 { width:50% !important; }div#blogarticledetails div.message .blogimgw75 { width:75% !important; }div#blogarticledetails div.message .blogimgw100 { width:100% !important; }div#blogarticledetails div.message img { display:block; border:1px solid #ccc; width:100%; }div#blogarticledetails div.message div.caption { text-align:left; margin:5px 0 0 0; }.front .c_blog div.prevnext { font-size:0.9em; background:#0a285b; ; text-align:left; padding:0em; text-align:center; color:#fff; overflow:auto; }.front .c_blog div.prevnext1 { margin:0 0 4em 0; }.front .c_blog div.prevnext2 { margin:0em 0 0em 0; }.front .c_blog div.prevnext span.info { display:inline-block; padding:0.3em; }.front .c_blog div.prevnext span.info * { color:#fff; }.front .c_blog div.prevnext .button { color:#111; display:inline-block; padding:0.3em 1em; border-left:1px solid #fff; border-right:1px solid #fff; vertical-align:middle; background:#bbb; text-decoration:none; }.front .c_blog div.prevnext span.button { color:#999; }.front .c_blog div.prevnext .buttonl { float:left; border-left:0; }.front .c_blog div.prevnext .buttonr { float:right; border-right:0; }.front .c_blog div.prevnext a.search { display:none; }.front .c_blog div.categorynarrow { clear:both; background:#0a285b; color:#222; font-size:1em; line-height:2em; padding:0 0 0 0.5em; }.front .c_blog div.categorynarrow1 { margin:0 0 0em 0; }.front .c_blog div.categorynarrow2 { margin:3em 0 0em 0; }.front .c_blog div.categorynarrow a { color:#222; }.front .c_blog div.categorynarrow a:hover { color:#f00; }.progressbarbg { height:2em; background:#999; width:250px; margin:3px 0 5px 0; }.progressbarbg .progressstatusbar { height:2em; background:#e60; width:0%; }.progressstatusvalue { font-size:1em; font-weight:normal !important; color:#fff; float:left; margin:0 0 0 2px; font-weight:bold; }.imgerror { color:#f00 !important; clear:both; }.note { font-size:80%; }.center { text-align:center; }.right { text-align:right; }.left { text-align:left; }a#totop { padding:0; cursor:pointer; color:#fff; border:0; text-decoration:none;text-align:center; z-index:99;width:45px;height:45px; position:fixed; bottom:20px; background-image:url(/_images/button_totop.png);background-size:cover; background-color:var(--color_arc4); }a#callbutton span { display:none; }a#callbutton { padding:0; cursor:pointer; color:#fff; border:0; text-decoration:none;text-align:center; z-index:99;width:55px;height:55px; position:fixed; bottom:20px; right:10px; background-image:url(/_images/button_contact.png);background-size:cover; background-color:var(--color_arc4); }a#callbutton span { display:none; }#contents { margin:0 0 0 0px; padding:0; }div.mainimg1 { width:100%; position:relative; z-index:0; color:#fff; overflow:auto; }div.mainimg1 div.inner1 { font-size:clamp(3px, 1vw, 16px); width:100%; margin:0 auto; }div.mainimg1 div.inner2 { width:90%; margin:0 auto; display:flex; align-items:center; position:relative; max-width:1500px; z-index:2;height:clamp(10px,135vw,1400px); }div.mainimg1 div.background { position:absolute; height:100%; width:100%; margin:0 auto; z-index:1; }div.mainimg1 div.headertext { width:100%; max-width:1500px; margin-top:clamp(10px,50vw,400px); }div.mainimg1 div.headertext * { font-family:var(--font_mplus1p); }div.mainimg1 div.headertext span { display:inline-block; }div.mainimg1 div.headertext h1 { line-height:1.0em; font-size:6.9em; margin:0em 0 0.2em 0; transform: scaleY(1.2); }div.mainimg1 div.headertext h1 span { display:block; line-height:1.1em; margin:0em 0 0em 0; font-weight:400; letter-spacing:-0.02em; }div.mainimg1 div.headertext h1 span:nth-of-type(1) { font-size:1em; }div.mainimg1 div.headertext h1 span:nth-of-type(2) { font-size:0.7em; }#mainimg .headertext h1 span {display: inline-block;white-space: nowrap;animation: mainTitleSpacing 1.5s ease-out both;}@keyframes mainTitleSpacing {0% {letter-spacing: 0.05em;opacity: 0;}100% {letter-spacing:-0.02em; opacity: 1;}}@media (prefers-reduced-motion: reduce) {#mainimg .headertext h1 span {animation: none;}}div.mainimg1 div.headertext p { margin:1em 0; }div.mainimg1 div.headertext div.headertext_text1 { line-height:1.5em; font-size:2.1em; clear:left; margin:0em 0 1.5em 0; transform: scaleY(1.2); }div.mainimg1 div.headertext div.headertext_text2 { line-height:1.2em; font-size:3em; clear:left; margin:0 0 0 0; transform: scaleY(1.2); }div.mainimg1 div.headertext div.headertext_text3 { line-height:1.2em; font-size:2.1em; font-weight:500; clear:left; margin:1.5em 0 0 0; }div.mainimg1 div.headertext div.headertext_text4 { width:100%; line-height:1.2em; font-size:1.15em; clear:left; margin:17vw 0 0 0; margin-top: clamp(10px,40vw,300px); }div.mainimg1 div.headertext div.headertext_text4 h2 { font-size:3em; text-align:left; font-weight:400; }div.mainimg1 div.headertext div.headertext_text4 a.more1 { display:inline-block; margin:0.5em 0 0 0; padding:0.5em 0 !important; width:15vw; }@media only screen and (max-aspect-ratio: 1/1.1) {}@media only screen and ( width < 480px ) {}#mainimg .headertext_text2 {clip-path: inset(0 100% 0 0);animation: mainTextWipeFade 2.1s ease-out 0.2s both;}#mainimg .headertext_text3 {animation: mainTextFade 1.5s ease-out 0.8s both;}#mainimg .headertext_text4 {animation: mainTextFade 1.5s ease-out 1.0s both;}@keyframes mainTextWipeFade {0% {clip-path: inset(0 100% 0 0);opacity: 0;}100% {clip-path: inset(0 0 0 0);opacity: 1;}}@keyframes mainTextFade {0% {opacity: 0;}100% {opacity: 1;}}@media (prefers-reduced-motion: reduce) {#mainimg .headertext_text2,#mainimg .headertext_text3 {animation: none;clip-path: none;opacity: 1;}} div#mmenuinheader { position:fixed; top: 0px; padding:0px 0 0 0; list-style-type:none; height:00px; width:100%; margin:0 auto; z-index:4; text-align:right; }div#mmenubg { position:fixed; top: 0px; left: 0px;padding:0px 0 0 0; list-style-type:none; height:10vw; width: 100vw; margin:0 auto; z-index:3; text-align:right; background: rgba(0,0,20,0.4); backdrop-filter: blur(7px);}div#mmenuinheader .inner { margin:0 auto; padding:0 0 0 0; overflow:hidden; }div#mmenuinheader a.headerlogo { float:left; display:block; width:clamp(10px,20vw,450px); aspect-ratio:2/0.8; background:url(/_images/logo.png) no-repeat; background-size:contain; background-position:0 0px; margin:1vw 0 0 0; padding:0; line-height:0; position:relative; z-index:101; }@media only screen and ( width < 1000px ) {div#mmenubg { height:13vw; }div#mmenuinheader a.headerlogo { float:left; display:block; width:clamp(10px,28vw,350px); }}div#mmenubutton { display:none;}@media only screen and ( width >= 1000px ) {ul.mmenu * { font-family:var(--font_mplus1p); }ul.mmenu { padding:0; list-style-type:none; width:100%; max-width:1500px; padding-left:21vw; margin:0 auto; text-align:right; padding-top:2.5vw; padding-right:0px; }ul.mmenu a { display:block; text-decoration:none; }ul.mmenu span { display:block; text-decoration:none; }ul.mmenu li.layer1:hover a.layer1 { color:#fff; border-bottom:3px solid var(--color_arc4); }ul.mmenu a.layer1active { color:#fff; border-bottom:3px solid var(--color_arc4); }ul.mmenu span.arrow { display:none; }ul.mmenu li.layer1 { display:inline-block; margin:0 0px 0 0; text-indent:0; }ul.mmenu li.layer1:first-of-type { display:none; }ul.mmenu a.layer1 { position:relative; font-size:1em; line-height:1em; text-align:center; margin:0 1.8vw 0 0; padding:16px 0px 17px 0px; transform: scaleY(1.3); }ul.mmenu a.layer1 span.sub { display:none; }ul.mmenu ul.layer2 { list-style-type:none; margin:8px 0 0 -1px; padding:0 0em 0 0em; border:1px solid #000; }ul.mmenu ul.layer2 li { margin:0; }ul.mmenu ul.layer2 li .layer2 { font-size:0.9em; line-height:2.5em; padding:0.0em 1em 0.0em 1em; margin:0px 0px; 0 0px ; background:#222; color:#fff; text-align:left; border-top:2px solid #000; }ul.mmenu ul.layer2 li .layer2active { background: #fff; color:#000 !important; }ul.mmenu ul.layer2 li a.layer2:hover { background:rgba(65,60,60,1) !important; }ul.mmenu ul.layer2 li .layer2 span.eng { } ul.mmenu ul.layer2 li .layer2 span.sub { display:none; }ul.mmenu ul.layer2 {position: absolute;max-height: 0;overflow: hidden;opacity: 0;visibility: hidden;transition: max-height 0.8s ease, visibility 13.3s ease;}ul.mmenu .has-child:hover > ul.layer2 {max-height: 500px;opacity: 1;visibility: visible;}}@media only screen and ( width < 1000px ) {div#mmenubutton {display: flex !important;flex-direction: column;justify-content: center;align-items: center;width: 10vw; max-width:50px; height: auto;padding: 0;top: 3.0vw; right: 3vw; float: none !important; position: fixed;z-index: 101; cursor: pointer;-webkit-tap-highlight-color: transparent;}div#mmenubutton img { display: block; width: 90%; aspect-ratio:1; z-index: 100; }div#mmenubutton .mmenutext {display: block;width: 100%;margin-top: 1.1vw;font-size: 1.7vw;font-family: var(--font_mplus1p), sans-serif;font-weight: bold;color: #fff;text-align: center;line-height: 1;letter-spacing: 0;}.mmenubox {background: rgba(0,0,0,0.30); backdrop-filter: blur(7px);position: fixed;top: 0;left: 0;width: 100%;height: auto;z-index: 99;max-height: 0;opacity: 1 !important;visibility: hidden;pointer-events: none;transition: max-height 0.6s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.5s ease;overflow: hidden;-webkit-overflow-scrolling: touch;scrollbar-gutter: stable;overscroll-behavior: contain;}.mmenubox::-webkit-scrollbar {width: 0px;background: transparent;}.mmenubox.is-open {visibility: visible;pointer-events: auto;transition: max-height 0.6s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s;}.mmenubox.full-screen {height: 100dvh;}.mmenubox.full-screen.is-open {max-height: 100dvh !important; /* JSの高さ計算を上書きして画面いっぱいに広げる */overflow-y: auto !important; /* 中身が溢れたらスクロール可能にする */}ul.mmenu { list-style-type: none; position: relative; left: 0; width: 100%; margin: 0; padding: 18vw 5vw 5vw 5vw; box-sizing: border-box;transform: none !important;transition: none !important;}ul.mmenu * { font-size:0.8em; font-family:var(--font_mplus1p); }ul.mmenu a { display:block; text-decoration:none; color:#fff; }ul.mmenu span { display:block; text-decoration:none; }ul.mmenu li.layer1 { width:100%; display:block; background:none; margin:0em 0 0em 0em; }ul.mmenu a.layer1 { position:relative; font-size:1.4em; line-height:1.6em; margin:0 0 4px 0; padding:0.9em 1em 0.6em 1em; text-align:left; font-weight:bold; border:0; background:var(--color_arc9); -webkit-tap-highlight-color: transparent; }ul.mmenu a.layer1 span.eng { display:block; font-size:inherit; transform: scaleY(1.3); }ul.mmenu a.layer1 span.arrow { display:block; margin-top:-1em; float:right; font-size:1em; }ul.mmenu a.layer1 span.sub { display:block; font-weight:normal; }ul.mmenu li:first-of-type a.layer1 { }ul.mmenu li.has-child > a.layer1,ul.mmenu li.has-child > a.layer1:active,ul.mmenu li.has-child > a.layer1:focus,ul.mmenu li.has-child.is-open > a.layer1 {background: var(--color_arc9) !important;color: #fff !important;}ul.mmenu li.layer1:not(.has-child) a.layer1:active,ul.mmenu li.layer1:not(.has-child) a.layer1:focus {background: var(--color_arc9);color: #fff;}ul.mmenu a.layer1active,ul.mmenu a.layer1active:focus { background: #fff !important; color: #000 !important; }@media (hover: hover) and (pointer: fine) {ul.mmenu li.layer1:hover > a.layer1 {background:rgba(55,50,50,1) !important;color: #fff !important;}}ul.mmenu ul.layer2 { position:relative; overflow:hidden; list-style-type:none; margin:0px 0 0 0px; padding:0vw 2vw 0vw 2vw; background:rgba(0,0,0,0.7); }ul.mmenu ul.layer2 li { text-align:left; width:100%; margin:0 0 4px 0; }ul.mmenu ul.layer2 li.layer2_first { margin-top:1em; }ul.mmenu ul.layer2 li.layer2_last { margin-bottom:1em; }ul.mmenu ul.layer2 li .layer2active { background:#fff !important; color:#000 !important; }ul.mmenu ul.layer2 li a.layer2:hover { background:rgba(55,50,50,1) !important; }ul.mmenu ul.layer2 li .layer2 { font-size:1.8em; line-height:1.5em; padding:0.7em 1em 0.6em 1.5em; margin:0px 0px 1px 0px; color:#fff; background:var(--color_arc9); }ul.mmenu ul.layer2 li .layer2 span.eng { display:block; font-size:inherit; margin-bottom:3px; transform: scaleY(1.3); } ul.mmenu ul.layer2 li .layer2 span.sub { font-size:1em; }ul.mmenu ul.layer2 {max-height: 0;opacity: 1 !important;visibility: hidden;overflow: hidden;transition: max-height 0.8s cubic-bezier(0, 0.8, 0.1, 1), visibility 0.8s cubic-bezier(0, 0.8, 0.1, 1) !important;}ul.mmenu ul.layer2 > li {transform: none !important;}ul.mmenu .has-child:hover > ul.layer2 {max-height: 0;visibility: hidden;}ul.mmenu li.has-child.is-open > ul.layer2 {visibility: visible !important;}}div.jswarning { background:#f00; color:#fff; text-align:center; padding:20px 10px; }div.jswarning2 { text-align:center; padding:50px 10px; }div.jswarning2 div.jswarningtitle { text-align:center; font-size:18px; margin:0 0 10px 0; }.popup { color:#fff;cursor:hand }.w100 { width:100%; }.w50 { width:50%; }.w35 { width:35%; }.w25 { width:25%; }.w20 { width:20%; }.w15 { width:15%; }div#testobj { position:fixed; left:1em; bottom:0.5em; z-index:300; color:#444; }.front .linetable { padding: 0; margin: 10px 0px 15px 0px; border-collapse: collapse; width:100%; }.front .linetable th { line-height:1.6em; vertical-align: top; border: 1px solid #777; border-left:0; border-right:0; border-collapse: collapse; text-align:left; }.front .linetable td { line-height:1.6em; vertical-align: top; border: 1px solid #777; border-left:0; border-right:0; border-collapse: collapse; }.front .linetable td {font-weight: normal; padding:10px 0px 10px 10px;}.front .linetable th {font-weight: normal; padding:10px 10px 10px 0px;}.front .linetable th.th2 { text-align:right }.front .linetable td.td1 { width:180px; }.front .linetable td.td2 { }.front .linetable td.td2img { width:60px; background:#000;padding:3px; }.front .linetable td.nb { border:0px; line-height:1em; font-size:80%; padding:0; margin:0; background:none; }.front .executebutton {display:block; font-size:1.3em; display:block; height:3.5em; width:100%; line-height:1.5em; padding:1em; margin:1em auto 0.3em auto; cursor:pointer; text-align:center; text-decoration:none; color:#000; background:#fd0 ; }.front .executebutton:hover {background:#f00; color:#fff; }.front .executebutton:active {background:#f00; color:#fff; }.front .executebutton:disabled {color:#aaa; background:#ddd; cursor:default !important;}div.result1 { margin:0 0 0 3px; }div.result1 ul { margin:0 0 20px 10px; padding-left:10px; }div.errormessage { color:#f44; margin:0 0 5px 0; }div.errormessagesingle { display:inline; }div.errorexists { text-align:left; background-color:#f00; color:#fff; padding:2px 10px; margin:10px 0 20px 0; width:100%; }.front a.editbutton { line-height:1em; float:right; background:#ddd; color:#222; text-decoration:none; padding:3px 10px; margin:0 0 0 3px; }.front #footertop { height:100px; }.front #footer { width:100%; clear:both; padding:0em 0 0em 0px; background:#444; }.front #footer div.header_in_footer { color:#fff; width:90%; margin:0 auto; max-width:1500px; }.front #footer2 { width:90%; clear:both; margin:0px auto; padding:25px 0 25px 0px; max-width:1500px; }.front #footer2 div.inner { color:#fff; margin:0 0; }.front #footer2 img { display:block; width:250px; margin:3px 0 20px 0 ; }.front #footer2 div.cr { display:block; clear:both; color:#aaa;font-size:0.70em; margin:0 auto 0.3em auto; line-height:1.3em; }.front #footer2 div.cr a { color:#99f; margin:0 0 0 0; }.front #footer2 div.cr a:hover { color:#f00; }.front #footer2 div.rc { clear:both; color:#777;font-size:0.70em; margin:0 0 12px 0; }.front #footer2 div.rc a { color:inherit; }.front #footer2 div.rc a:hover { color:#fff; }.front #footer a.opensitemap { display:block; text-decoration:none; text-align:center; font-size:0.8em; color:#fff; background:#666; line-height:2.5em; border-top:1px solid #eee; border-bottom:1px solid #222; }.front #footer div#footermenucontainer { width:90%; margin:0 auto; max-width:1500px; padding:1em 0 1em 0; overflow:hidden; }@media only screen and ( width < 1000px ) {}.front #footer2 div.footerlinkbuttons { width:500px; float:right; margin:-60px 0 0 0; }.front #footer2 div.footerlinkbuttons a { width:120px; display:block; float:right; margin:0 0 0 10px; }.front #footer2 div.footerlinkbuttons a img { width:120px; }ul.socialbuttons { list-style-type:none; display:inline-block; padding:0; margin:0 0 1em 0; }ul.socialbuttons li { float:left; margin:0; }ul.socialbuttons a { text-decoration:none; display:inline-block; font-size:0.8em; line-height:1.5em; margin:0 5px 2px 0; padding:0.3em 0.8em 0.2em 0.8em; border:1px solid #fff; color:#fff; -webkit-border-radius: 0.6em;-moz-border-radius: 0.6em;border-radius: 0.6em;}ul.socialbuttons a.facebookshare { background:#4267b2; color:#fff; }ul.socialbuttons a.twitter { background:#1c95e0; color:#fff; }ul.socialbuttons a.line { background:#00b833; color:#fff; }ul.socialbuttons a.hatena { background:#01a4de; color:#fff; }ul.socialbuttons a.google { background:#fafafa; color:#a00; }.front div.formbox2 { padding:0.5em 0.7em; width:100%; background:#f6f6f6; border:1px solid #ccc; overflow:auto; margin:0 0 1em 0; }.front div.formbox2 * { vertical-align:middle; }.front .errormessagesingle+div.formbox2 { background:#ffe0e0; border:1px solid #faa; }.front .errormessagesingle+input { background:#ffe0e0; border:1px solid #faa; }.front .errormessagesingle+textarea { background:#ffe0e0; border:1px solid #faa; }.front .errormessagesingle+div>label { background:#ffe0e0; border:1px solid #faa; }.front div.formcomplete2 { width:100%; border:1px solid #ccc; background-color:#fff; margin:20px 0 20px 0; color:#444; }.front div.formcomplete2 div.inner { margin:0 25px 25px 25px; line-height:1.5em; }.front ul.formcompletenote { margin:0 0 2em 0.6em; padding:0 0 0 0.6em; }.front ul.formcompletenote li { line-height:1.5em; margin:0.8em 0; }.scroll-fade,.scroll-up {opacity: 0;transition:opacity 0.7s ease,transform 0.7s ease;}.scroll-up {transform: translateY(20px);}.scroll-fade.is-visible,.scroll-up.is-visible {opacity: 1;transform: none;}.scroll-scale {opacity: 0;transform: scale(1.2);transition:opacity 0.8s ease,transform 1.8s ease;}.scroll-scale.is-visible {opacity: 1;transform: scale(1);}.scroll-scale-frame {overflow: hidden;}.scroll-scale-frame img {display: block;width: 100%;}.scroll-wipe {opacity: 0;clip-path: inset(0 100% 0 0);transition:opacity 0.8s ease,clip-path 0.8s ease;}.scroll-wipe.is-visible {opacity: 1;clip-path: inset(0 0 0 0);transition-delay: var(--delay, 0s);}.scroll-wipe2 {position: relative;}.scroll-wipe2 .scroll-wipe-content {clip-path: inset(0 100% 0 0);transition: clip-path 1.3s ease;}.scroll-wipe2.is-visible .scroll-wipe-content {clip-path: inset(0 0 0 0);transition-delay: var(--delay, 0s);}@media (prefers-reduced-motion: reduce) {.scroll-fade,.scroll-up,.scroll-scale,.scroll-wipe {opacity: 1;transform: none;clip-path: none;transition: none;transition-delay: 0s !important;}.scroll-wipe2 .scroll-wipe-content {clip-path: none;transition: none;transition-delay: 0s !important;}}}* { font-family: 'メイリオ',Meiryo,'ＭＳ Ｐゴシック','sans-serif','Lucida Grande','Arial','Osaka';  }

