@charset "utf-8";
/*---------------------------------------------------------------------
Common Style
common.css
-----------------------------------------------------------------------
Copyright 2026 (c) linkpath Allrights Reserved.
Created: linkpath
Coding: Hinako Hayashi
Last Update: 2026.04.07
---------------------------------------------------------------------*/
@media screen and (min-width: 960px) {}
@media screen and (min-width: 481px) {}
/*===========================================================
    root
===========================================================*/
:root {
    --color-main: rgb(0, 0, 0);
    --color-base: rgb(255, 255, 255);
    --color-accent: rgb(50, 50, 50);

    --color-lightgrey: rgb(217, 217, 217);

    --color-main__transparent: rgba(0, 0, 0, 0.5);
    --color-base__transparent: rgba(255, 255, 255, 0.6);
    --color-accent__transparent: rgba(50, 50, 50, 0.3);

    --color-grad__main: rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0);

    --color-pink: rgb(255, 224, 242);
    --color-orange: rgb(255, 227, 186);
    --color-green: rgb(196, 227, 186);
    --color-indigo: rgb(195, 195, 222);
    --color-yellow: rgb(255, 202, 107);
    --color-red: rgb(255, 100, 101);
    --color-violet: rgb(187, 173, 222);
    --color-purple: rgb(223, 159, 228);

    /*border-radius*/
    --box-radius: 2em;
    --box-radius__s: 1em;
    --box-radius__l: 4em;
    --section-radius: 0.5em;
}

/*===========================================================
    common
===========================================================*/
html ,body ,.wrap {
    margin: 0;
    padding: 0;
    width: 100vw;
    width: 100dvw;
}
html ,body {
    scroll-behavior: smooth;
}

/*===========================================================
    body
===========================================================*/
body {
    font-family: "Inter", "Noto Sans JP";
    font-style: normal;
    overflow-x: hidden;
    position: relative;
    font-size: 0.9rem;
    line-height: 1.5em;
}
body::-webkit-scrollbar {
    display: none;
}

/*===========================================================
    font
===========================================================*/
.noto {
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
}
.inter {
    font-family: "Inter", "Noto Sans JP";
    font-optical-sizing: auto;
    font-style: normal;
}
/*===========================================================
    base
===========================================================*/
/* width */
.width-1350 {
    max-width: 1350px;
    width: 90%;
    margin: 0 auto;
}

/*background*/
.back-main { background: var(--color-main);}
.back-base { background: var(--color-base);}
.back-accent { background: var(--color-accent);}
.back-lightgrey { background: var(--color-lightgrey);}

.back-main__transparent { background: var(--color-main__transparent);}
.back-base__transparent { background: var(--color-base__transparent);}
.back-accent__transparent { background: var(--color-accent__transparent);}

.back-pink { background: var(--color-pink); }
.back-orange { background: var(--color-orange); }
.back-green { background: var(--color-green); }
.back-indigo { background: var(--color-indigo); }
.back-yellow { background: var(--color-yellow); }
.back-red { background: var(--color-red); }
.back-violet { background: var(--color-violet); }
.back-purple { background: var(--color-purple); }

.back-blur {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

/* background grad */
.back-grad__main {
	background-blend-mode: hue, color, overlay, screen;
	background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%),
		    radial-gradient(ellipse at 80% 5%, rgb(100, 100, 100) 0%, rgb(255 40 184 / 0%) 30%),
		    radial-gradient(ellipse at bottom left, rgb(50, 50, 50) 0%, rgb(100 100 100 / 31%) 60%),
		    linear-gradient(135deg, rgba(18, 46, 119, 0) 0%, rgba(18, 46, 119, 0) 75%, rgb(50, 50, 50) 100%),
		    linear-gradient(82deg, rgb(50, 50, 50) 0%, rgb(100, 100, 100) 27%, rgb(50, 50, 50) 74%, rgb(0, 0, 0) 100%);
}

/* border */
.border-main { border: solid 1.5px var(--color-main);}
.border-base { border: solid 1.5px var(--color-base);}
.border-accent { border: solid 1.5px var(--color-accent);}
.border-lightgrey { border: solid 1.5px var(--color-lightgrey);}
.border-main__transparent { border: solid 1.5px var(--color-main__transparent);}
.border-base__transparent { border: solid 1.5px var(--color-base__transparent);}
.border-accent__transparent { border: solid 1.5px var(--color-accent__transparent);}


/*color*/
.text-main { color: var(--color-main);}
.text-base { color: var(--color-base);}
.text-accent { color: var(--color-accent);}
.text-lightgrey { color: var(--color-lightgrey);}
.text-main__transparent { color: var(--color-main__transparent);}
.text-base__transparent { color: var(--color-base__transparent);}
.text-accent__transparent { color: var(--color-accent__transparent);}


/* font weight */
.weight-300 { font-weight: 300;}
.weight-400 { font-weight: 400;}
.weight-500 { font-weight: 500;}
.weight-600 { font-weight: 600;}
.weight-700 { font-weight: 700;}
.weight-800 { font-weight: 800;}
.weight-900 { font-weight: 900;}

/*svg fill*/
svg path.main, svg polygon.main { fill: var(--color-main);}
svg path.base, svg polygon.base { fill: var(--color-base);}
svg path.accent, svg polygon.accent { fill: var(--color-accent);}
svg path.lightgrey, svg polygon.lightgrey { fill: var(--color-lightgrey);}