@charset "UTF-8";
@font-face {
	font-family: "A-OTF-SHINMGOPRO-BOLD";
	src: url(../webfont/A-OTF-SHINMGOPRO-BOLD.woff) format('woff');
	color: #000;
	font-display: swap;
}
/* @font-face {
	font-family: "NotoSansJP-Medium";
	src: url(../webfont/NotoSansJP-Medium.woff) format("woff");
	-ms-font-feature-settings: "normal";
	color: #000;
	font-display: swap;
} */
@font-face {
	font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2"),
       url("../fonts/NotoSansJP-Medium.woff") format("woff");
  font-weight: 500; /* Medium の場合 */
  font-style: normal;
  font-display: swap;
}
@font-face {
	font-family: "A-OTF-SHINMGOPRO-MEDIUM";
	src: url(../webfont/A-OTF-SHINMGOPRO-MEDIUM.woff) format("woff");
	-ms-font-feature-settings: "normal";
	color: #000;
	font-display: swap;
}
@font-face {
	font-family: "a-otf-shin-go-pro-de-bold";
	src: url(../webfont/a-otf-shin-go-pro-de-bold.woff) format("woff");
	font-display: swap;
}
html {
    font-family:sans-serif;
    -webkit-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
    scroll-behavior: smooth;
}
body {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
	font-size: clamp(14px, 1.1vw, 16px);
    color: #2e1704;
    margin:0;
}
.font1 {
	font-family: "A-OTF 新丸ゴ Pro";
    font-weight: 500;
}
.font2 {
	font-family: "heisei-maru-gothic-std", sans-serif;
    font-weight: 800;
    font-style: normal;
}

.bold {
    font-weight: 700;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {
    display:block
}
audio,canvas,progress,video {
    display:inline-block;
    vertical-align:baseline
}
audio:not([controls]) {
    display:none;
    height:0
}
[hidden],template {
    display:none
}
a {
    background-color:transparent
}
a:active,a:hover {
    outline:0
}
abbr[title] {
    border-bottom:1px dotted
}
b,strong {
    font-weight:700
}
dfn {
    font-style:italic
}
mark {
    color:#000;
    background:#ff0
}
small {
    font-size:80%
}
sub,sup {
    position:relative;
    font-size:75%;
    line-height:0;
    vertical-align:baseline
}
sup {
    top:-.5em
}
sub {
    bottom:-.25em
}
img {
    border:0
}
svg:not(:root) {
    overflow:hidden
}
figure {
    margin:1em 40px
}
hr {
    height:0;
    -webkit-box-sizing:content-box;
    -moz-box-sizing:content-box;
    box-sizing:content-box
}
pre {
    overflow:auto
}
code,kbd,pre,samp {
    font-family:monospace;
    font-size:1em
}
button,input,optgroup,select,textarea {
    margin:0;
    font:inherit;
    color:inherit
}
button {
    overflow:visible
}
button,select {
    text-transform:none
}
button,html input[type=button],input[type=reset],input[type=submit] {
    -webkit-appearance:button;
    cursor:pointer
}
button[disabled],html input[disabled] {
    cursor:default
}
button::-moz-focus-inner,input::-moz-focus-inner {
    padding:0;
    border:0
}
input {
    line-height:normal
}
input[type=checkbox],input[type=radio] {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    padding:0
}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {
    height:auto
}
input[type=search] {
    -webkit-box-sizing:content-box;
    -moz-box-sizing:content-box;
    box-sizing:content-box;
    -webkit-appearance:textfield
}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration {
    -webkit-appearance:none
}
fieldset {
    padding:.35em .625em .75em;
    margin:0 2px;
    border:1px solid silver
}
legend {
    padding:0;
    border:0
}
textarea {
    overflow:auto
}
optgroup {
    font-weight:700
}
table {
    border-spacing:0;
    border-collapse:collapse
}
td,th {
    padding:0
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print {
    *,:after,:before {
        color:#000!important;
        text-shadow:none!important;
        background:0 0!important;
        -webkit-box-shadow:none!important;
        box-shadow:none!important
    }
    a,a:visited {
        text-decoration:underline
    }
    a[href]:after {
        content:" (" attr(href) ")"
    }
    abbr[title]:after {
        content:" (" attr(title) ")"
    }
    a[href^="#"]:after,a[href^="javascript:"]:after {
        content:""
    }
    blockquote,pre {
        border:1px solid #999;
        page-break-inside:avoid
    }
    thead {
        display:table-header-group
    }
    img,tr {
        page-break-inside:avoid
    }
    img {
        max-width:100%!important
    }
    h2,h3,p {
        orphans:3;
        widows:3
    }
    h2,h3 {
        page-break-after:avoid
    }
    select {
        background:#fff!important
    }
}
*,:after,:before {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box
}

button,input,select,textarea {
    font-family:inherit;
    font-size:inherit;
    line-height:inherit
}
a {
    color:#2e1704;
    text-decoration:none;
    transition: .3s;
}
a:focus,a:hover {
    color:#2e1704;
    text-decoration:underline
}
a:focus {
    outline:thin dotted;
    outline:5px auto -webkit-focus-ring-color;
    outline-offset:-2px
}
figure {
    margin:0
}
img {
    vertical-align:middle
}
ol,ul {
    margin-top:0;
    margin-bottom:10px
}
ol ol,ol ul,ul ol,ul ul {
    margin-bottom:0
}
html {
    color:#000;
    background:#fff
}
blockquote,body,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,pre,td,textarea,th,ul {
    margin:0;
    padding:0
}
table {
    border-collapse:collapse;
    border-spacing:0
}
fieldset,img {
    border:0
}
address,caption,cite,code,dfn,em,strong,th,var {
    font-style:normal;
    font-weight:400
}
ol,ul {
    list-style:none
}
caption,th {
    text-align:left
}
h1,h2,h3,h4,h5,h6 {
    font-size:100%;
    font-weight:400
}
q:after,q:before {
    content:''
}
abbr,acronym {
    border:0;
    font-variant:normal
}
sup {
    vertical-align:text-top
}
sub {
    vertical-align:text-bottom
}
input,select,textarea {
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit
}
legend {
    color:#000
}
#yui3-css-stamp.cssreset {
    display:none
}

.font_braah {
    font-family:braah-one,sans-serif
}
.font_quick {
    font-family:quicksand,sans-serif
}
#topcontrol {
    z-index:999;
    margin:20px
}
li,p,td,th {
    line-height: 2.3em;
    letter-spacing: .08em;
    font-weight:500
}
h2,h3,h4 {
    line-height:1.5em;
    letter-spacing:.07em;
    font-weight:500
}
.img100 img {
    width:100%;
    height:auto
}
.img100p {
    width:100%;
    height:auto
}
.container1860 {
    width:98%;
    margin:0 auto;
    max-width:1860px
}
.container1680 {
    width:90%;
    margin:0 auto;
    max-width:1680px
}
.container1600 {
    width:90%;
    margin:0 auto;
    max-width:1600px
}
.container1500 {
    width:90%;
    margin:0 auto;
    max-width:1500px
}
.container1440 {
    width:90%;
    margin:0 auto;
    max-width:1440px
}
.container1280 {
    width:90%;
    margin:0 auto;
    max-width:1280px
}
.container1200 {
    width:90%;
    margin:0 auto;
    max-width:1200px
}
.container1170 {
    width:90%;
    margin:0 auto;
    max-width:1170px
}
.container1135 {
    width:90%;
    margin:0 auto;
    max-width:1135px
}
.container1100 {
    width:90%;
    margin:0 auto;
    max-width:1100px
}
.container960 {
    width:90%;
    max-width:960px;
    margin:0 auto
}
.z500 {
    position:relative;
    z-index:500
}
.z10 {
    position:relative;
    z-index:10
}
.flex_box {
    display:flex;
    justify-content:space-between
}
.item_center {
    align-items:center
}
.item_start {
    align-items:flex-start
}
.item_end {
    align-items:flex-end
}
.justify_end {
	justify-content: end;
}
.justify_between {
	justify-content: space-between;
}
.grid {
    display:grid
}
.grid-cols-1 {
    grid-template-columns:repeat(1,minmax(0,1fr))
}
.grid-cols-2 {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.overflow_hidden {
    overflow:hidden
}
.posi {
    position:relative
}
.relative {
    position:relative
}
.tel-link2 a {
    text-decoration:none;
    color:inherit
}
.tel-link2 {
    text-decoration:none;
    color:inherit
}
.br1024 {
    display:none
}
.br740 {
    display:none
}
.br480 {
    display:none
}
.t-hi {
    line-height:2.4em
}
.order2 {
    order:2
}
.center {
    text-align: center;
}
.mr-auto {
    margin-right: auto;
}
.ml-auto {
    margin-left: auto;
}
@media only screen and (min-width:1680px) {
    .pc_nowrap {
        white-space:nowrap
    }
}
@media only screen and (max-width:1400px) {
    .none1400 {
        display: none;
    }
}
@media only screen and (min-width:1280px) {
    .item_center1280 {
        align-items:center
    }
}
@media only screen and (max-width:1200px) {
    .none1200 {
        display: none;
    }
}
@media only screen and (max-width:1580px) {
    #topcontrol {
        z-index:999;
        margin:20px 80px 20px 0
    }
    .none1580 {
        display:none
    }
    .container1860 {
        width:90%;
        margin:0 auto;
        max-width:1860px
    }
    .container1100,.container1135,.container1170,.container1200,.container1280,.container1440,.container1500,.container1600,.container1680,.container960 {
        width:88%
    }
}
@media only screen and (max-width:1024px) {
    #topcontrol {
        z-index:999;
        margin:20px 20px 20px 0
    }
    .br1024 {
        display:block
    }
    .none1024 {
        display:none
    }
    .t-hi {
        line-height:1.8em
    }
}
@media only screen and (max-width:740px) {
    li, p, td, th {
        line-height: 2em;
    }

    #topcontrol {
        margin:20px 20px 80px 0
    }
    body {
        font-size:17px
    }
    .br740 {
        display:block
    }
    .none740 {
        display:none
    }
    .flex_box {
        display:block
    }
    .container1860 {
        width:94%
    }
    .container1135,.container1170,.container1200,.container1280,.container1440,.container1500,.container1600,.container1680,.container960 {
        width:88%
    }

    .mr-auto {
        margin-left: auto;
    }
    .ml-auto {
        margin-right: auto;
    }

    .sp_center {
        text-align: center;
    }
}
@media only screen and (max-width:480px) {
    .br480 {
        display:block
    }
    .none480 {
        display:none
    }
}