@charset "UTF-8";

/*====================================================
            =01 default
====================================================*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    padding: 0;
    margin: 0;
}
html {
    width: 100%;
    overflow-y: scroll;
    font-size: 62.5%;
}
/* body 
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
*/
body {
    width: 100%;
    font-family: "Noto Sans JP", "游ゴシック体", 'Yu Gothic', "YuGothic", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 180%;
    font-weight: 400;
    background-color:#fff;
    color: #4c4948;
    text-align:center;
    letter-spacing: .03em;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
}
/* ul | ol */
ul, ol {
    list-style: none;
    line-height: 0;
}
/* dl */
dl {
    line-height: 0;
}
/* font */
h1,h2,h3,h4,h5,h6,
p, li, dt, dd, th, td {
    font-size: 100%;
    line-height: 2;
}
/* table */
table {
    border-collapse: separate;
    border-spacing: 0;
    empty-cells: show;
}
caption, th {
    text-align: left;
}
/* img */
img {
    vertical-align: bottom;
border: 0;
max-width: 100%;
height: auto;
}
/* sup | sub */
sub,
sup {
    font-size: 65%;
    font-weight:200;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
white-space: nowrap;
}
sup {
    top: -0.5em;
}
/* a */
a {
    text-decoration: underline;
    background: transparent;
    cursor: pointer;
    color: #326077;
}
a:link,
a:visited,
a:focus {}
a:hover {
    text-decoration: none;
}
/* code | kbd | pre | samp */
code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}
pre {
    white-space: pre-wrap;
}
q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}
iframe{
    vertical-align:bottom;
    border:0;
}
address{
    font-style:normal;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
}
/* audio | canvas | video */
audio,
canvas,
video {
    display: inline-block;
}
[hidden],
template {
    display: none;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
/* dfn */
dfn {
    font-style: italic;
}
/* mark */
mark {
    background: #ff0;
    color: #000;
}
/* svg */
svg:not(:root) {
    overflow: hidden;
}
/* fieldset */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
/* legend */
legend {
    border: 0;
}
/* form */
button,
input,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
}
/* small */
small{
    font-size:12px;
}



.mfp-close {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 0;
    padding: 0;
    transform: rotate(45deg);
}
.mfp-close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    transform: translate(0, -50%);
}
.mfp-close:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    transform: translate(0, -50%) rotate(90deg);
}

#wrapper #mfpModalWrap {
    display: none;
}
#mfpModalWrap {
    position: relative;
    max-width: 1200px;
    padding-top: 50px;
    margin: 0 auto;
}
#mfpModalWrap .list {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
#mfpModalWrap .list > * {
    width: 49%;
    padding-bottom: 2%;
}
#mfpModalWrap .list {
    padding: 30px;
}
#mfpModalWrap .list a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    font-size: 18px;
    padding: 10px;
    color: #326077;
    background-color: #fff;
    text-decoration: none;
    box-sizing: border-box;
    line-height: 1.2;
}
#mfpModalWrap .list a.current {
    color: #fff;
    background-color: #326077;
}
#mfpModalWrap .list a:not(.current):hover {
    background-color: #e1f0ff;
}
#mfpModalWrap .movie {
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    position: relative;
}
#mfpModalWrap .movie > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}