.mincho{ font-family: 'Noto Serif JP', serif; font-weight: 600; }
.trajan{ font-family: trajan-pro-3, serif; font-weight: 400; }

#gHeader{ position: static; }

.mv{ height: 350px; background-repeat: no-repeat; background-size: cover; background-position: center; }
.mv.sample{ background-image: url(../images/dummy/mv01.jpg); }
.mv.smv01{ background-image: url("../images/page/mv/mv01.jpg"); }
.mv.smv02{ background-image: url("../images/page/mv/mv02.jpg"); }
.mv.smv03{ background-image: url("../images/page/mv/mv03.jpg"); }
.mv.smv04{ background-image: url("../images/page/mv/mv04.jpg"); }
.mv.smv05{ background-image: url("../images/page/mv/mv05.jpg"); }
.mv.smv06{ background-image: url("../images/page/mv/mv06.jpg"); }
.mv.smv07{ background-image: url("../images/page/mv/mv07.jpg"); }

main{ display: block; background: url(../images/common/bg-main01.png) rgba(230, 230, 230, .4) no-repeat bottom left/58rem; padding: 3.5rem 0 10rem; }

.pankuzu{ width: 930px; margin: 0 auto; }
.pankuzu li{ font-size: 1.2rem; display: inline-block; }
.pankuzu li:last-of-type{ font-weight: 700; }
.pankuzu li:not(:last-of-type):after{ content: '/'; margin-left: .4em; }

.container{ width: 930px; background: #fff; padding: 6.5rem 6.5rem 7rem; margin: 0 auto; }
.container + .container{ margin-top: 10rem; }
.container img{ display: block; margin-bottom: 1.5rem; }
.container a.btn{ font-family: trajan-pro-3, 'Noto Serif JP', serif; display: table; font-size: 1.6rem; line-height: 2.2; color: #937218; border-bottom: solid 1px; border-right: solid 1px; padding: 0 5rem 0 1rem; position: relative; margin: 2rem auto 0; transition: .3s; }
.container a.btn:after{ content: ''; width: .8rem; height: .8rem; border-right: solid 1px; border-bottom: solid 1px; position: absolute; top: 50%; right: 1.8rem; transform: translateY(-50%) rotate(-45deg); transition: .3s; }
.container a.btn:hover{ background: #937218; border-color: #937218; color: #fff; }
.container a.btn:hover:after{ border-color: #fff; }

.container > *:first-child,
.container .side-img .content > *:first-child,
.container .side-img .img > *:first-child,
.container .gray-wrap > *:first-child,
.container .gray-wrap dd > *:first-child,
.container .flow-list li .img > *:first-child,
.container .table-row > *,
.container .flow-list dl dd .txt > *{ margin-top: 0 !important; }
.container > *:last-child,
.container .side-img .content > *:last-child,
.container .side-img .img > *:last-child,
.container .gray-wrap > *:last-child,
.container .gray-wrap dd > *:last-child,
.container .flow-list li .img > *:last-child,
.container .table-row > *,
.container .flow-list dl dd .img > *,
.container .flow-list dl dd .txt > *{ margin-bottom: 0 !important; }

main h1{ font-family: 'Noto Serif JP', serif; font-weight: 600; font-size: 3.5rem; text-align: center; margin: 4rem 0 7rem; position: relative; padding-bottom: .2em; }
main h1:after{ content: ''; width: 6rem; height: 1px; background: #222831; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
.container h2{ font-family: 'Noto Serif JP', serif; font-weight: 600; font-size: 2.4rem; color: #fff; text-align: center; background: #937218; margin: 9rem 0 2.6rem; padding: 0 1em; }
.container h3{ font-size: 2rem; font-weight: 700; border-bottom: solid 1px; margin: 4rem 0 2.5rem; }
.container h3.no-border{ border-bottom: none; display: flex; justify-content: space-between; margin-bottom: 1.5rem; align-items: flex-end; }
.container h3.no-border small{ font-size: 1.2rem; font-weight: 400; }
.container h4{ font-size: 1.5rem; font-weight: 400; display: table; background: #937218; color: #fff; padding: 0 1.3em; margin: 3.4rem 0 1em; }
.container h5{ font-size: 1.5rem; padding-left: 1.2em; position: relative; margin: 2rem 0 1em; }
.container h5:before{ content: '●'; position: absolute; left: 0; }
.container p{ margin-bottom: 1em; }
.container p strong{ font-weight: 700; color: #937218; }
.container h2 + *,
.container h3 + *,
.container h4 + *,
.container h5 + *{ margin-top: 0 !important; }

.container .side-img{ display: flex; justify-content: space-between; margin: 5rem 0; }
.container .side-img .img{ width: 370px; }
.container .side-img .content{ width: 370px; }

.container .table-row{ display: flex; margin: 4rem 0; }
.container .table-row table + table{ border-left: dotted 2px #fff; }
.container table:not(.no-style){ width: 100%; margin: 4rem 0; background: #e6e6e6; }
.container table.fix{ table-layout: fixed; }
.container table:not(.no-style) tr{ border-bottom: solid 1px #fff; }
.container table:not(.no-style) th{ font-size: 1.6rem; font-weight: 400; padding: .8em 1em; vertical-align: middle; }
.container table:not(.no-style) td{ font-size: 1.6rem; padding: .8em 1em; vertical-align: middle; }
.container table.price td{ text-align: right; }
.container table.price td span{ font-size: .8em; }

.container ul.dice{ margin: 2rem 0; }
.container ul.dice li{ font-size: 1.4rem; padding-left: 1em; position: relative; }
.container ul.dice li:before{ content: '・'; position: absolute; left: 0; }
.container ul.dice li + li{ margin-top: .3em; }

.container ol{ margin: 3rem 0; counter-reset: num; }
.container ol li{ padding-left: 3.4rem; position: relative; }
.container ol li:before{ counter-increment: num; content: counter(num); width: 2.45rem; height: 2.45rem; background: #937218; display: flex; justify-content: center; align-items: center; font-family: 'Noto Serif JP', serif; font-weight: 600; color: #fff; line-height: 1; letter-spacing: 0; position: absolute; left: 0; top: .2rem; }
.container ol li + li{ margin-top: .8rem; }

.container .flow-list{ margin: 4.5rem 0; counter-reset: flow; display: flex; justify-content: space-between; flex-wrap: wrap; }
.container .flow-list dl{ width: 370px; }
.container .flow-list dl:nth-of-type(n+3){ margin-top: 2rem; }
.container .flow-list dl dt{ font-size: 1.6rem; font-weight: 700; color: #fff; background: #937218; padding: .25em 1em .25em 6rem; position: relative; margin-bottom: 1.4rem; }
.container .flow-list dl dt:before{ counter-increment: flow; content: counter(flow,decimal-leading-zero); font-family: 'Noto Serif JP', serif; font-weight: 600; font-size: 2.5rem; line-height: 1; letter-spacing: 0; position: absolute; left: 1.3rem; top: .2em; }
.container .flow-list dl dd{ display: flex; justify-content: space-between; }
.container .flow-list dl dd .txt{ width: 180px; }
.container .flow-list dl dd .img{ width: 180px; }

.container .youtube { position: relative; width: 100%; padding-top: 56.25%; margin: 9rem 0 2.6rem;}
.container .youtube iframe { position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.container img.full{ width: 100%; margin: 9rem 0 2.6rem;}

.container .flexB .flex3{ flex-basis: calc(100%/3 - 20px); }

.center_img{ width:600px; margin:0 auto;}