@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap');

:root
{
    --c-white: #fefefe;
    --c-black: #353635;
    --c-red: #f66b63;
    --c-green: #a0af6b;
    --c-blue: #3B8EA5;
    --c-yellow: #f6b960;
    --c-background: #f7f7f7;
    --c-logo: #4E63A5;
    --border-3px: solid 3px color-mix(in srgb, var(--c-black), transparent 80%);
    --border-1px: solid 1px color-mix(in srgb, var(--c-black), transparent 80%);

    --icon-phone: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(21.288336,0,0,21.288336,0.00212749,0.38061939)'%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='M 1.0236581e-8,0.45032323 C -0.0018146,0.47525748 0.02148585,0.48140951 0.03670631,0.47364997 0.09436236,0.45928155 0.15277172,0.4476257 0.20997646,0.43163216 c 0.0244814,-0.008628 0.0148041,-0.04443 0.007904,-0.0647053 -0.0117119,-0.0334996 -0.0179911,-0.0758466 0.003679,-0.10574397 0.0560641,-0.10141796 0.16018522,-0.13969838 0.25585138,-0.14622425 0.0899238,-0.002383 0.18185168,-0.009207 0.26981636,0.0185902 0.0689414,0.0218992 0.13740665,0.0717065 0.16942373,0.1517237 0.0146222,0.0434513 -0.0158067,0.084059 -0.0151652,0.12716294 0.0103675,0.0307273 0.0435756,0.0225116 0.0649374,0.0318251 0.0476467,0.009721 0.0950135,0.0254771 0.14282227,0.0317001 0.023308,-5.436e-4 0.017944,-0.0374384 0.016381,-0.0561248 C 1.1250765,0.36316244 1.1168571,0.30660411 1.094918,0.25608034 1.0566609,0.1617317 0.97599973,0.10972077 0.90062775,0.06788629 0.78739011,0.00719325 0.66175674,-0.00386327 0.53954139,1.2986093e-4 0.38056787,-0.00442819 0.21560318,0.04348843 0.08988293,0.16647799 0.03196489,0.22708775 0.00182501,0.32049976 0.00216097,0.4124933 0.00144065,0.4251033 7.2033e-4,0.4377132 1.0236581e-8,0.45032323 Z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 0.06411461,1.0442773 c 0.009087,0.022968 0.02881333,0.043113 0.05432485,0.045616 0.0461657,0.00473 0.0933924,5.347e-4 0.13995132,0.00196 0.24846017,-4.922e-4 0.49715415,9.832e-4 0.74546862,-7.354e-4 0.02493,-0.00244 0.047948,-0.018564 0.05687,-0.042275 0.017704,-0.053916 0.010885,-0.11218633 0.014905,-0.16821699 C 1.0815508,0.80821144 1.0516812,0.73848802 1.0121705,0.67942048 0.96774162,0.60765922 0.92021236,0.53757395 0.87769842,0.46477754 0.86554609,0.44242404 0.8583641,0.41803778 0.84956791,0.39456396 0.8440519,0.38232446 0.82940199,0.37724487 0.81675365,0.378187 c -0.002326,-0.0394682 0.006361,-0.0803926 -0.00796,-0.11828286 -0.0120266,-0.0131224 -0.023724,-0.0268147 -0.0429696,-0.0274334 -0.0138025,-0.003959 -0.0316793,0.001592 -0.0426289,0.0101258 -0.0156952,0.0105413 -0.0218332,0.0266004 -0.0246198,0.0445947 -0.001593,0.030153 -1.489e-4,0.0607175 -6.5842e-4,0.0910058 -0.0894896,-6.67e-6 -0.17899441,1.334e-5 -0.26847449,-1e-5 -0.002326,-0.0394682 0.006361,-0.0803926 -0.00796,-0.11828286 -0.0120266,-0.0131224 -0.023724,-0.0268147 -0.0429696,-0.0274334 -0.0138025,-0.003959 -0.0316795,0.001592 -0.0426291,0.0101258 -0.0156952,0.0105413 -0.0218331,0.0266005 -0.0246197,0.0445947 -0.001593,0.030153 -1.489e-4,0.0607175 -6.5842e-4,0.0910058 -0.0252766,-0.003607 -0.0394947,0.0211963 -0.0419053,0.042967 -0.024679,0.0672759 -0.0709198,0.12340836 -0.10692655,0.18475462 -0.041154,0.0676805 -0.09370857,0.13274191 -0.10672897,0.21294001 -0.0087395,0.05838 7.6992e-4,0.11754526 3.8179e-4,0.17628463 0.0023852,0.0164213 0.0059076,0.032754 0.008688,0.049134 z m 0.6999109,-0.47883641 c 0.0310792,0.0333716 0.0508606,0.0755922 0.0615753,0.11962976 0.007921,0.0401316 0.008685,0.0825154 -0.002021,0.12220937 -0.0105126,0.0444974 -0.0333484,0.0853523 -0.0643544,0.11881698 -0.0272722,0.029298 -0.0616607,0.0518893 -0.09872,0.0668196 C 0.61774301,1.0086303 0.57139121,1.0151934 0.52619926,1.0078559 0.48520876,1.0034159 0.44657606,0.9860799 0.41197401,0.9642731 0.37532821,0.9373388 0.34306191,0.9033849 0.32398871,0.861679 0.30374431,0.824526 0.29644311,0.7816173 0.29528721,0.73972199 c 0.002036,-0.0454338 0.0123412,-0.0911261 0.0364219,-0.13015545 0.0196444,-0.0374737 0.0512653,-0.0673833 0.0854578,-0.0916201 0.0389077,-0.0235492 0.0826249,-0.0403656 0.12845505,-0.0420269 0.0420721,-0.004486 0.0845086,0.00519 0.1236572,0.0201543 0.035542,0.0170942 0.0695328,0.0385985 0.0947463,0.069367 z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 0.44511577,0.86141222 c 0.0458529,0.0454807 0.11800448,0.0615582 0.17831372,0.0376903 0.0632224,-0.0232664 0.10738854,-0.08753 0.10778938,-0.1547823 6.5638e-4,-0.0650688 -0.039387,-0.12826093 -0.0992909,-0.15421324 -0.0611567,-0.0282539 -0.13782815,-0.0140421 -0.18566588,0.0332293 -0.0464749,0.0455462 -0.0628444,0.11854471 -0.0388363,0.17925412 0.008154,0.0221945 0.0219182,0.0413666 0.03769,0.0588218 z' /%3E%3C/g%3E%3C/svg%3E");
    --icon-map: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8' standalone='no'%3F%3E%3Csvg width='24' height='24' viewBox='0 0 24 24' version='1.1' id='svg2' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cdefs id='defs2' /%3E%3Cdesc id='desc1'%3EOutline to SVG export%3C/desc%3E%3Cg id='g2' transform='matrix(0.99886783,0,0,0.99886783,0.00657608,-0.39115279)'%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' opacity='1' d='M 7.1122952,4.0062356 C 6.7776042,5.3020058 6.7773137,6.6932135 7.2291996,7.961236 7.8207889,9.3843033 8.7699814,10.625724 9.5308311,11.961411 10.353887,13.307449 11.176944,14.653488 12,15.999526 13.469181,13.564252 14.997908,11.161675 16.430047,8.7060615 17.089488,7.4972602 17.26598,6.0500169 17.025882,4.703221 16.820663,3.417926 16.220471,2.170628 15.257605,1.2853569 14.398433,0.47833347 13.237068,0.03831736 12.063986,0.0063021 10.847869,0.00551193 9.6302795,0.45015294 8.7396232,1.2876341 7.9383032,2.0063426 7.4316963,2.9895549 7.1122952,4.0062356 Z m 2.6572263,0.06987 C 10.284506,2.7155999 12.118065,2.1439689 13.312744,2.9755142 14.546319,3.7193251 14.78724,5.6056447 13.775068,6.6321787 12.821989,7.7465362 10.874813,7.6371247 10.052884,6.4225388 9.5554188,5.7596715 9.4506148,4.8390878 9.7695215,4.0761056 Z' id='path1' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' opacity='1' d='M 0.037282,8.6004992 C -0.051016,10.404562 0.02573741,12.21631 1.4410804e-8,14.023287 0.01340132,16.749419 -0.02669119,19.478163 0.01983998,22.202678 0.04015064,23.094439 0.97692745,23.765033 1.8303389,23.53126 3.8911459,23.042242 5.9427258,22.506783 8.0000024,22.000009 10.666668,22.666675 13.333334,23.333336 16,24 18.102751,23.456537 20.225273,22.978965 22.315878,22.395024 23.476666,21.955874 24.149392,20.668087 24,19.456942 23.9911,15.259806 24.0177,11.06094 23.98677,6.8648814 23.99829,5.949018 23.052611,5.2238286 22.169658,5.4687471 c -1.016522,0.227648 -2.02366,0.5025142 -3.036637,0.7479975 -0.07665,0.7320748 -0.140861,1.4666519 -0.401168,2.1618444 1.089379,-0.272337 2.178775,-0.5447102 3.268144,-0.8170228 -0.0083,4.1591118 0.01654,8.3197638 -0.01237,12.4779148 -0.174411,0.688548 -1.029205,0.58561 -1.55702,0.791325 -1.143537,0.285875 -2.287093,0.571789 -3.430618,0.85764 4e-6,-3.344047 -1e-6,-6.688093 0,-10.03214 -0.666666,1.090276 -1.333333,2.180553 -2,3.270829 -8e-6,2.25377 1.6e-5,4.507567 -1.2e-5,6.761321 -1.999993,-0.500007 -4.000005,-0.99999 -5.999988,-1.500005 -10e-8,-1.753772 1e-7,-3.507544 -10e-8,-5.261316 C 8.3333342,13.836851 7.6666698,12.74657 7,11.656293 c -4.9e-6,2.84405 1.01e-5,5.688112 -7.6e-6,8.532155 C 5.3333304,20.605106 3.6666522,21.021802 2,21.438435 2.0082872,17.279323 1.9834559,13.11867 2.0123744,8.9605189 2.172509,8.2950668 2.9936192,8.3742319 3.5035272,8.1856718 4.0350038,8.0528025 4.566481,7.9199338 5.0979573,7.7870642 4.9402262,7.1361092 4.8587596,6.4513578 4.8759779,5.7810062 3.757434,6.0982011 2.5919361,6.2762376 1.5025952,6.6812801 0.75274906,7.0474182 0.20068528,7.7847124 0.037282,8.6004992 Z' id='path2' /%3E%3C/g%3E%3C/svg%3E%0A");
    --icon-fax: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8' standalone='no'%3F%3E%3Csvg width='24' height='24' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cdefs /%3E%3Cdesc%3EOutline to SVG export%3C/desc%3E%3Cg%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 5,7 c 0.6666666,-1e-7 1.3333337,3e-7 2,-2e-7 C 7.0000063,5.3333351 6.9999867,3.6666551 7.00001,2 c 3.333328,2.67e-5 6.666673,-1.67e-5 9.99999,1e-5 0,1.6666633 0,3.3333267 0,4.99999 0.666667,-5e-7 1.333334,3e-7 2,-2e-7 C 18.98517,5.2892456 19.02923,3.5738566 18.97876,1.8659073 18.942875,1.0274647 18.299325,0.2594125 17.483939,0.07664881 16.338229,-0.09132813 15.168722,0.04305683 14.013181,2.1544344e-8 11.631349,0.01460529 9.2449413,-0.02892057 6.8659072,0.02123826 6.0274634,0.05711952 5.2594138,0.70067462 5.0766489,1.5160584 4.9070214,2.6163846 5.0440918,3.7408484 5,4.8510545 5,5.5673697 5,6.2836848 5,7 Z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='M 0.09788705,19.618034 C 0.36199093,20.357858 1.0527572,20.941625 1.851291,20.976447 2.563526,21.03514 3.28459,20.981649 4,21 c 6.3e-6,-2.333331 -1.33e-5,-4.66668 10e-6,-7 5.3333278,2.7e-5 10.666673,-1.7e-5 15.99999,10e-6 0,2.33333 0,4.66666 0,6.99999 0.909082,-0.05472 1.865616,0.136213 2.739001,-0.159526 0.570174,-0.225869 1.070595,-0.747692 1.164165,-1.358202 0.02499,-4.182826 0.07982,-8.367884 0.08622,-12.5493183 C 23.963851,6.1415328 23.437339,5.4058147 22.691701,5.1354232 21.823414,4.8836469 20.894667,5.0465471 20,5.0000002 19.999993,5.999998 20.000013,7.0000132 19.99999,8 14.666662,7.9999933 9.3333185,8.0000133 4,7.99999 4.0000198,6.9999934 3.999997,5.9999963 3.9999998,5 3.1093265,5.0458496 2.1883406,4.8860984 1.3214824,5.1287049 0.57668221,5.3975425 0.03967755,6.1256391 0.01293402,6.918338 c -0.0231694,4.047246 -0.01843199,8.101158 -0.0023149,12.148709 0.02908931,0.183662 0.05817861,0.367325 0.08726793,0.550987 z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 8,16 c 10e-8,0.666667 -3e-7,1.333334 2e-7,2 2.6666668,0 5.3333328,0 7.9999998,0 0,-0.666667 0,-1.333333 0,-2 -2.666667,0 -5.333333,0 -8,0 z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 5,15 c 0.014263,2.377466 -0.028459,4.759416 0.021238,7.134093 0.035881,0.838444 0.6794363,1.606494 1.4948206,1.789258 1.100326,0.169627 2.2247897,0.03256 3.3349956,0.07665 2.4271168,-0.01423 4.8587098,0.02841 7.2830388,-0.02124 0.986882,-0.03974 1.826073,-0.914324 1.852973,-1.897101 C 19.017295,19.723146 18.99134,17.360211 19,15 c -0.666667,0 -1.333333,0 -2,0 -7e-6,2.333331 1.3e-5,4.66668 -10e-6,7 -3.333328,-7e-6 -6.666673,1.3e-5 -9.99999,-10e-6 -1e-7,-2.33333 3e-7,-4.66666 -2e-7,-6.99999 C 6.3333332,15 5.6666666,15 5,15 Z' /%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' d='m 8,19 c 10e-8,0.666667 -3e-7,1.333334 2e-7,2 2.6666668,0 5.3333328,0 7.9999998,0 0,-0.666667 0,-1.333333 0,-2 -2.666667,0 -5.333333,0 -8,0 z' /%3E%3C/g%3E%3C/svg%3E%0A");
    --icon-mail: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8' standalone='no'%3F%3E%3Csvg width='24' height='24' viewBox='0 0 24 24' version='1.1' id='svg1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cdefs id='defs1' /%3E%3Cdesc id='desc1'%3EOutline to SVG export%3C/desc%3E%3Cg id='g1' transform='matrix(0.99924275,0,0,0.99924275,0.00731144,3.0089529)'%3E%3Cpath fill-rule='evenodd' fill='%23000000' stroke='%23555555' stroke-width='0' opacity='1' d='M 23.414213,0.58578666 C 22.848189,-0.01402569 21.986407,-0.03863679 21.22,2.3123238e-8 14.773719,0.00785931 8.3258952,-0.01570671 1.880578,0.011762 0.78298254,0.03971922 -0.09698739,1.1005172 2.3752359e-8,2.1799998 0.00787486,6.8262797 -0.01572762,11.474106 0.01176202,16.119422 0.03989724,17.216304 1.1002574,18.098026 2.1799998,18 8.8262811,17.992154 15.474104,18.01569 22.119422,17.988238 23.24094,17.957968 24.119327,16.858126 24,15.76 23.992125,11.13372 24.015728,6.5058942 23.988238,1.880578 23.971593,1.3940529 23.74647,0.93537347 23.414213,0.58578666 Z M 2,2.0982599 v -9e-7 C 1.957341,1.8768296 2.3048261,2.063757 2.398271,1.999999 c 6.530826,0.00589 13.062823,-0.011775 19.592918,0.00882 0.02151,0.4261497 0.0022,0.8543056 0.0088,1.2811859 C 18.666646,5.7899918 15.33332,8.2900154 11.999983,10.789995 8.6666529,8.2899948 5.3333141,5.7900004 1.99999,3.2899959 2.0000013,2.8927506 1.9999954,2.4955052 2,2.0982599 Z M 11.999998,13.289999 C 15.333331,10.790013 18.666671,8.2899683 22,5.7900185 c -0.0059,3.4002423 0.01179,6.8016595 -0.0088,10.2011705 -6.649917,0.01662 -13.3024758,0.01077 -19.9526319,0.0029 -0.1243928,-0.03239 0.016874,-0.307276 -0.038559,-0.392385 1.01e-5,-3.270568 -2.25e-5,-6.5411743 1.42e-5,-9.811719 3.3333261,2.4999985 6.6666562,4.999992 9.9999837,7.499988 z' id='path1' /%3E%3C/g%3E%3C/svg%3E%0A");
    --icon-menu: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MiIgaGVpZ2h0PSI1MiIgZmlsbD0iIzAwMDAwMCIgdmlld0JveD0iMCAwIDI1NiAyNTYiPjxwYXRoIGQ9Ik0yMjQsMTI4YTgsOCwwLDAsMS04LDhINDBhOCw4LDAsMCwxLDAtMTZIMjE2QTgsOCwwLDAsMSwyMjQsMTI4Wk00MCw3MkgyMTZhOCw4LDAsMCwwLDAtMTZINDBhOCw4LDAsMCwwLDAsMTZaTTIxNiwxODRINDBhOCw4LDAsMCwwLDAsMTZIMjE2YTgsOCwwLDAsMCwwLTE2WiI+PC9wYXRoPjwvc3ZnPg==");
    --icon-close: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MiIgaGVpZ2h0PSI1MiIgZmlsbD0iIzAwMDAwMCIgdmlld0JveD0iMCAwIDI1NiAyNTYiPjxwYXRoIGQ9Ik0yMDUuNjYsMTk0LjM0YTgsOCwwLDAsMS0xMS4zMiwxMS4zMkwxMjgsMTM5LjMxLDYxLjY2LDIwNS42NmE4LDgsMCwwLDEtMTEuMzItMTEuMzJMMTE2LjY5LDEyOCw1MC4zNCw2MS42NkE4LDgsMCwwLDEsNjEuNjYsNTAuMzRMMTI4LDExNi42OWw2Ni4zNC02Ni4zNWE4LDgsMCwwLDEsMTEuMzIsMTEuMzJMMTM5LjMxLDEyOFoiPjwvcGF0aD48L3N2Zz4=");
}

html
{
    min-height: 100%;
    /* background-color: var(--c-black); */
}

body
{
    color: var(--c-black);
    background-color: var(--c-background);
    font-family: "Shippori Mincho", serif;
    width: 1920px;
    min-width: 320px;
    max-width: 1920px;
    margin: 0 auto;
    font-size-adjust: 0.54;

    @media (hover: none) and (pointer: coarse)
    {
        font-size-adjust: unset;
    }

    @media screen and (max-width: 365px)
    {
        font-size-adjust: 0.43;
    }
}

html, body
{
    position: relative;
}

::selection
{
    color: white;
    background-color: rgb(59, 115, 164);
}

/* SECTION Flex */

.flxCol
{
    display: flex;
    flex-direction: column;
}

.flxRow
{
    display: flex;
    flex-direction: row;
}

.flxCntrLR
{
    justify-content: center;
}

.flxCntrTB
{
    align-items: center;
}

.flxWrap
{
    flex-wrap: wrap;
}

/* !SECTION */

.grid
{
    display: grid;

    .gridItem
    {
        display: contents;
    }
}

/* SECTION Sizing */

.wFull
{
    width: 100%;
}

.hFull
{
    height: 100%;
}

.wFit
{
    width: fit-content;
}

.hFit
{
    height: fit-content;
}

.wMax
{
    width: max-content;
}

.hMax
{
    height: max-content;
}

/* !SECTION */

.hidden
{
    display: none;
}

.disabled
{
    pointer-events: none;
    opacity: 0.3;
}

figure
{
    display: flex;
}

ul, ol
{
    padding-left: 1rem;
}

img
{
    user-select: none;
    user-drag: none;
}

a
{
    color: var(--c-black);
}

.arrowN
{
    mask-image: url("data:image/svg+xml,%3Csvg width='24' height='12.48001' viewBox='0 0 24 12.48001' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cdefs /%3E%3Cg transform='translate(-1.2598746e-6,-11.280768)'%3E%3Cpath style='fill:none;stroke:%23000000;stroke-width:1.91693;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke' d='M 0.95846624,23.280756 12,12.239193 23.041534,23.280756' /%3E%3C/g%3E%3C/svg%3E");
    mask-repeat: no-repeat;
}

.arrowE
{
    mask-image: url("data:image/svg+xml,%3Csvg width='12.958454' height='23.999998' viewBox='0 0 12.958454 23.999998' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(-5.5207735,-5.7599955)'%3E%3Cpath style='fill:none;stroke:%23000000;stroke-width:1.91693;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke' d='M 6.4792385,28.801528 17.520802,17.759994 6.4792385,6.7184605' /%3E%3C/g%3E%3C/svg%3E");
    mask-repeat: no-repeat;
}

.arrowW
{
    mask-image: url("data:image/svg+xml,%3Csvg width='12.958454' height='23.999998' viewBox='0 0 12.958454 23.999998' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cdefs /%3E%3Cg transform='translate(-5.5207735,-5.7599955)'%3E%3Cpath style='fill:none;stroke:%23000000;stroke-width:1.91693;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke' d='M 17.520762,28.801528 6.4791988,17.759994 17.520762,6.7184605' /%3E%3C/g%3E%3C/svg%3E");
    mask-repeat: no-repeat;
}

.arrowS
{
    mask-image: url("data:image/svg+xml,%3Csvg width='24.000048' height='13.000012' viewBox='0 0 24.000048 13.000012' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(0.04529367,-11.235472)'%3E%3Cpath style='fill:none;stroke:%23000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:markers fill stroke' d='M 22.954754,12.235472 11.95473,23.235526 0.95470633,12.235472' /%3E%3C/g%3E%3C/svg%3E");
    mask-repeat: no-repeat;
}

.lineHorizontal, .lineVertical
{
    background: linear-gradient(0deg, var(--c-black) 0%, var(--c-black) 100%);
    background-position: center;
    background-repeat: no-repeat;
    opacity: attr(opacity type(<number>), 1.0);
}

.lineHorizontal
{
    background-size: 100% attr(thickness px, 2px);
    height: attr(thickness px, 2px);
}

.lineVertical
{
    background-size: attr(thickness px, 2px) 100%;
    width: attr(thickness px, 2px);
}

.clickable
{
    cursor: pointer;
}

*:has(wbr)
{
    white-space: nowrap;
}

/* SECTION Header */

header
{
    display: flex;
    flex-direction: row;
    padding: 22px 10px 10px 10px;

    @media screen and (max-width: 740px)
    {
        padding-bottom: 30px;
    }

    @media screen and (max-width: 660px)
    {
        font-size: 2.4vw;
    }

    @media screen and (max-width: 475.5px)
    {
        padding-bottom: 11px;
        /* padding-left: 0; */
        padding-right: 3px;
        /* position: sticky; */
        /* top: -238px; */
        /* z-index: 9999; */
    }
}

#logo
{
    --size: 127px;
    width: var(--size);
    height: var(--size);
    min-width: var(--size);
    min-height: var(--size);
    background-image: url(https://www.ohkubogakuen.or.jp/logo_2025.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;

    @media screen and (max-width: 660px)
    {
        --size: 19.23vw;
    }
}

.menuItem
{
    display: flex;
    width: fit-content;
    height: 2lh;
    text-align: center;
    font-weight: bold;
    align-items: center;
    border-bottom: solid 1px var(--c-black);
    margin: 0 auto 7px auto;
    margin-bottom: 7px;
    text-decoration: none;
}

#menuItems
{
    br
    {
        display: none;

        @media screen and (max-width: 886px)
        {
            display: inline;
        }
    }

    .container
    {
        height: max-content;
        background-color: var(--c-background);
        border-radius: 12px;
        .items
        {
            justify-content: space-evenly;
            grid-template-columns: repeat(8, auto);

            @media screen and (max-width: 1300px)
            {
                grid-template-columns: repeat(4, auto);
                row-gap: 20px;

                .menuItem
                {
                    justify-content: center;
                }
            }

            @media screen and (max-width: 4-75.5px) /* Collapse menu */
            {
                display: none;
                width: fit-content;
                padding: 0;
            }
        }

        @media screen and (max-width: -475.5px)
        {
            width: fit-content;
            margin: 0 0 0 auto;

            .btnMenu
            {
                display: block;
            }
        }
    }

    @media screen and (max-width: -475.5px)
    {
        height: 52px;
    }
}

#menuFloating
{
    position: absolute;
    top: 0;
    margin: 0 5px 0 auto;
    transform-origin: top right;
    min-width: max-content;
    height: 0;
    /* transition: top ease-out 0.03s, left ease-out 0.03s; */
    z-index: 9999;

    .container
    {
        height: max-content;
        background-color: var(--c-background);
        border-radius: 12px;
        padding: 5px 17px 5px 17px;
        box-shadow: rgba(0, 0, 0, 0.192) 0px 4px 10px 0px;

        .items
        {
            display: none;
            justify-content: space-evenly;
            grid-template-columns: repeat(8, auto);
            grid-auto-rows: 1fr;
            grid-auto-columns: 1fr;
            grid-gap: 25px;
            margin-right: 10px;

            .menuItem
            {
                margin: auto;
                height: 100%;
            }

            @media screen and (min-width: 963px)
            {
                .menuItem
                {
                    position: relative;
                    border: none;
                    margin: 0;
                }

                .menuItem:not(:last-child)::before
                {
                    position: absolute;
                    content: '';
                    top: 0;
                    right: -12px;
                    width: 1px;
                    height: 100%;
                    background-color: var(--c-black);
                    opacity: 0.2;
                }

            }
            @media screen and (max-width: 963px)
            {
                grid-template-columns: repeat(4, auto);
            }

            @media screen and (max-width: 574px)
            {
                grid-template-columns: repeat(2, auto);
            }

            @media screen and (max-width: 475.5px) /* Collapse menu */
            {
                width: fit-content;
                padding: 0;
                margin: 0;
            }
        }

        @media screen and (max-width: 475.5px)
        {
            width: fit-content;
            padding: 0;
            right: -2px;
        }
    }
}

#menuFloating:has(.btnMenu.active)
{
    .container
    {
        @media screen and (max-width: 889px)
        {
            padding-bottom: 18px;
        }
        .items
        {
            display: grid;
        }
    }
}

.btnMenu
{
    width: 52px;
    height: 52px;
    background-color: var(--c-black);
    mask-image: var(--icon-menu);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: 40px;
}

.btnMenu.active
{
    width: 52px;
    height: 52px;
    background-color: var(--c-black);
    mask-image: var(--icon-close);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: 40px;
}

#menuItems:has(.btnMenu.active), #menuFloating:has(.btnMenu.active)
{
    @media screen and (max-width: 475.5px)
    {

        .btnMenu
        {
            margin-left: 15px;
        }

        .container
        {
            box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3);
            padding: 0px 0px 10px 28px;
            .items
            {
                display: grid;
                grid-template-columns: repeat(2, auto);
                grid-column-gap: 18px;
            }
        }
    }
}

/* !SECTION */

article
{
    margin: 30px 0;
    padding-bottom: 30px;

    > h2
    {
        position: relative;
        border-bottom: solid 1px var(--c-black);
        margin: 0 0 1.2lh 1lh;
        padding-left: 11px;
        width: 30%;
        min-width: fit-content;
    }

    > h2::before, > h2::after
    {
        content: '';
        position: absolute;
        transform: translateY(0.1lh);
    }

    > h2::before
    {
        --size: 0.8lh;
        top: 0;
        left: -1lh;
        width: var(--size);
        height: var(--size);
        background-color: var(--c-black);
    }

    > h2::after
    {
        --size: 0.5lh;
        top: 0.5lh;
        left: -0.5lh;
        width: var(--size);
        height: var(--size);
        background-color: var(--c-black);
        mix-blend-mode: exclusion;
    }

    .content
    {
        padding: 0 50px;

        @media screen and (max-width: 565px)
        {
            padding: 0 12px;
        }
    }
}

article:only-child
{
    padding-bottom: 0;
    margin-bottom: 0;
}

/* ANCHOR #mainContents */
#mainContents
{
    padding: 40px 80px;

    @media screen and (max-width: 1604px)
    {
        padding: 30px;
    }

    @media screen and (max-width: 740px)
    {
        padding: 20px;
    }

    @media screen and (max-width: 365px)
    {
        padding: 5px;
    }
}

.indented
{
    margin-left: 10px;
    padding-top: 0.4lh;
    padding-left: 10px;
    border-left: solid 3px color-mix(in srgb, var(--c-black), transparent 88%);

    @media screen and (max-width: 409px)
    {
        margin-left: 2px;
        padding-left: 5px;
    }
}

ul
{
    list-style: none;

    li
    {
        position: relative;
        padding-left: 15px;
        margin-left: 8px;
    }

    li::before
    {
        position: absolute;
        content: '';
        width: 10px;
        height: 1px;
        top: 50%;
        left: 0;
        background-color: var(--c-black);
        opacity: 0.44;
    }
}

.underlined
{
    flex-wrap: wrap;

    *
    {
        flex-wrap: wrap;
    }

    span
    {
        box-shadow: inset 0 -10px 0 0 color-mix(in srgb, #4b64af, transparent 81%);
        width: fit-content;
    }
}

.underlined:not(:has(span))
{
    box-shadow: inset 0 -10px 0 0 color-mix(in srgb, #4b64af, transparent 81%);
}

h2.underlined
{
    margin: 1lh 0;
    margin-top: 2lh;
    margin-left: -17px;

    @media screen and (max-width: 365px)
    {
        margin-left: 0;
        width: 100%;

        div
        {
            justify-content: center;
        }
    }
}

h2.underlined:not(:has(span))
{
    @media screen and (max-width: 365px)
    {
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
    }
}

#sendMail
{
    width: 100%;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    background-color: color-mix(in srgb, var(--c-background), transparent 10%);
    padding: 1lh;
    font-family: inherit;
    z-index: 9999;
    align-items: center;
    backdrop-filter: blur(4px);

    *
    {
        font-family: inherit;
    }

    h2
    {
        width: fit-content;
    }

    form
    {
        margin-top: 1lh;
        max-width: 815px;

        label
        {
            margin-bottom: 1lh;
            font-weight: bold;

            span
            {
                margin-bottom: 4px;
            }
        }

        select
        {
            width: 100%;
        }

        textarea
        {
            resize: none;
            height: 100%;
        }

        textarea, input, button, select
        {
            padding: 4px;
            font-size: initial;
        }

        button
        {
            padding: 4px 12px;
            border-radius: 100px;
            white-space: nowrap;
            min-width: fit-content;
            border: none;
            outline: none;
            font-weight: bold;
            cursor: pointer;
        }

        #cancel, #close.failure
        {
            background-color: #e59db2;
        }

        #cancel:hover, #close.failure:hover
        {
            box-shadow: inset 0 0 0 2px #d36680;
        }

        #cancel:focus, #close.failure:focus
        {
            box-shadow: inset 0 0 0 2px #a54e62;
        }

        #cancel:active, #close.failure:active
        {
            background-color: #a54e62;
            color: white;
        }

        #submit, #close.success, .openForm
        {
            background-color: #92d8f0;
        }

        #submit:hover, #close.success:hover, .openForm:hover
        {
            box-shadow: inset 0 0 0 2px #62bddd;
        }

        #submit:focus, #close.success:focus, .openForm:focus
        {
            box-shadow: inset 0 0 0 2px #4e8ea5;
        }

        #submit:active, #close.success:active, .openForm:active
        {
            background-color: #4e8ea5;
            color: white;
        }
    }
}

.openForm
{
    width: fit-content;
    padding: 11px 3rem;
    border-radius: 100px;
    background-color: #92d8f0;
}

.openForm:hover
{
    box-shadow: inset 0 0 0 2px #62bddd;
}

.openForm:focus
{
    box-shadow: inset 0 0 0 2px #4e8ea5;
}

.openForm:active
{
    background-color: #4e8ea5;
    color: white;
}

li[data-list]
{
    list-style-type: none;
    padding-left: 1.5em;
    position: relative;

    .ql-ui
    {
        position: absolute;
    }
    .ql-ui:before
    {
        display: inline-block;
        margin-left: -1.5em;
        margin-right: .3em;
        text-align: right;
        white-space: nowrap;
        width: 1.2em;
    }
}

li[data-list=ordered]
{
    counter-increment: list-0;

    .ql-ui:before
    {
        content: counter(list-0, decimal) '. ';
    }
}

li[data-list=bullet]
{
    .ql-ui:before
    {
        content: '\2022';
    }
}