/* CSS Document */
body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	word-break: keep-all;
	line-break: strict;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
body {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    text-align: left !important;
    line-break: strict;
    word-break: normal;
}
header {
    background: #000;
    border-bottom: 1px solid #FFF;
    padding: 6px 10px 6px 10px;
    height: 30px;
    overflow: hidden !important;
}
a:hover {
    opacity: 0.8;
}
a {
    transition: opacity 0.3s ease-out;
}
.sp {
    display: none;
}
.pc {
    display: block;
}
@media (max-width: 750px) {
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
}
.mb-10 {margin-bottom: 10px;}
.mb-20 {margin-bottom: 20px;}
.mb-30 {margin-bottom: 30px;}
.mb-40 {margin-bottom: 40px;}
.mb-50 {margin-bottom: 50px;}
.mb-60 {margin-bottom: 60px;}
.mb-70 {margin-bottom: 70px;}
.mb-80 {margin-bottom: 80px;}
.mb-90 {margin-bottom: 90px;}
.mb-100 {margin-bottom: 100px;}
.mb-110 {margin-bottom: 110px;}
.mb-120 {margin-bottom: 120px;}
.mb-130 {margin-bottom: 130px;}
.mb-140 {margin-bottom: 140px;}
.mb-150 {margin-bottom: 150px;}
.mb-160 {margin-bottom: 160px;}
.mb-170 {margin-bottom: 170px;}
.mb-180 {margin-bottom: 180px;}
.mb-190 {margin-bottom: 190px;}
.mb-200 {margin-bottom: 200px;}
@media (max-width: 640px) {
    .mb-10 {margin-bottom:1.333333333vw;}
    .mb-20 {margin-bottom:2.666666667vw;}
    .mb-30 {margin-bottom:4vw;}
    .mb-40 {margin-bottom:5.333333333vw;}
    .mb-50 {margin-bottom:6.666666667vw;}
    .mb-60 {margin-bottom:8vw;}
    .mb-70 {margin-bottom:9.333333333vw;}
    .mb-80 {margin-bottom:10.66666667vw;}
    .mb-90 {margin-bottom:12vw;}
    .mb-100 {margin-bottom:13.33333333vw;}
    .mb-110 {margin-bottom:14.66666667vw;}
    .mb-120 {margin-bottom:16vw;}
    .mb-130 {margin-bottom:17.33333333vw;}
    .mb-140 {margin-bottom:18.66666667vw;}
    .mb-150 {margin-bottom:20vw;}
    .mb-160 {margin-bottom:21.33333333vw;}
    .mb-170 {margin-bottom:22.66666667vw;}
    .mb-180 {margin-bottom:24vw;}
    .mb-190 {margin-bottom:25.33333333vw;}
    .mb-200 {margin-bottom:26.66666667vw;}
}
.ta-c {text-align: center;}
.ta-r {text-align: right;}
.ta-l {text-align: left;}
.ta-j {text-align: justify;}
.fz-80 { font-size: 80%;}
.fz-85 {font-size: 85%;}
.fz-90 {font-size: 90%;}
.fz-105 {font-size: 105%;}
.fz-110 {font-size: 110%;}
.fz-115 {font-size: 115%;}
.fz-120 {font-size: 120%;}
.fz-125 {font-size: 125%;}
.fz-130 {font-size: 130%;}
.fz-135 {font-size: 135%;}
.fz-140 {font-size: 140%;}
.fz-145 {font-size: 145%;}
.fz-150 {font-size: 150%;}
.fw-b {font-weight: bold;}
.fw-n {font-weight: normal;}
.po-r {position: relative;}
.po-a {position: absolute;}

.col2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.col2 > div,
.col2 > p {
    width: 50%;
}
/* -----------------------------------------
	nav
-----------------------------------------*/
#nav-btn {
    position: fixed;
    z-index: 9000;
    top: 20px;
    right: 10px;
    width: 70px;
    cursor: pointer;
}
#nav-btn:hover{
    opacity: 0.75;
}
#nav-fixed {
    position: fixed;
    z-index: 9000;
    top: 0;
    left: -300px;
    width: 300px;
    height: 100%;
    background: #FFF;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none; 
}
#nav-fixed::-webkit-scrollbar {
    display:none;
}
#nav-fixed.navClose {
    animation: navClose 0.25s ease 0.0s forwards alternate;
}
#nav-fixed.navOpen {
    animation: navOpen 0.25s ease 0.0s forwards alternate;
}

#nav-fixed ul li {
    font-size: 18px;
}
#nav-fixed ul li a {
    display: block;
    color: #000;
    font-weight: bold;
}
#nav-fixed ul li a:hover {
    opacity: 0.75;
}
@media (max-width: 750px) {
    #nav-btn {
        top: 3vw;
        right: 3vw;
        width: 14vw;
    }
    #nav-fixed {
        left: -75vw;
        width: 75vw;
    }
    #nav-fixed ul li {
        font-size: 3.3vw;
    }
}
@keyframes navClose {
    0% {
        left: 0;
    }
    100% {
        left: -300px;
    }
}
@keyframes navOpen {
    0% {
        left: -300px;
    }
    100% {
        left: 0;
    }
}
@media (max-width: 750px) {
    @keyframes navClose {
        0% {
            left: 0;
        }
        100% {
            left: -75vw;
        }
    }
    @keyframes navOpen {
        0% {
            left: -75vw;
        }
        100% {
            left: 0;
        }
    }
}
/* -----------------------------------------
	youtube
-----------------------------------------*/
#contents .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
#contents .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
/* -----------------------------------------
	sns-btn
-----------------------------------------*/
#contents .sns-btn {
    margin: 0 24% 30px;
    text-align: center;
}
#contents .sns-btn li {
    display: inline-block;
    width: 23%;
    margin: 0 3%;
}
#social_btn {
	width: 100%;
    text-align: center;
    font-size: 0;
}
#social_btn > div {
    vertical-align: top;
    display: inline-block;
    margin: 0 5px;
}
#social_btn .fb_iframe_widget {
    vertical-align: top;
}
/* -----------------------------------------
	page-top
-----------------------------------------*/
#page-top {
    position: fixed;
    z-index: 9000;
    bottom: 20px;
    right: 20px;
}
#page-top.fixed {
    position: fixed !important;
}
/* -----------------------------------------

	SNSフッタ

-----------------------------------------*/
#sns-footer {
	background: #EEE;
}
#sns-footer svg {
	width: 100%;
}
#sns-footer #sns-footer-inner {
	max-width: 750px;
	margin: auto;
}
#sns-footer #sns-footer-inner #sns-footer-tit {
	padding: 12% 20% 5%;
}
#sns-footer #sns-footer-inner #sns-footer-line {
	padding: 0 14% 10%;
}
#sns-footer #sns-footer-inner #sns-footer-tit-02 {
	padding: 0 33% 3.5%;
}
#sns-footer #sns-footer-inner #sns-footer-list {
	padding: 0 14% 15%;
	overflow: hidden;
}
#sns-footer #sns-footer-inner #sns-footer-list li {
	float: left;
	width: 33.33333%;
	width: -webkit-calc(100% / 3);
	width: calc(100% / 3);
}
#sns-footer #sns-footer-inner #sns-footer-list li a {
	display: block;
	padding: 5%;
}
/* -----------------------------------------
	sns-link
-----------------------------------------*/
.sns-link {
    background-color: #e7e5e3;
    margin: 0 6.66% 2em;
    padding: 2em 0 2em;
    color: #000;
}
.sns-link-title {
    text-align: center;
    margin-bottom: 0.225em;
    font-size: 160%;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 0.75em;
}
.sns-link-title .in {
    position: relative;
    display: inline-block;
}
.sns-link-title .in::after {
    content: '';
    position: absolute;
    transform: rotate(-15deg);
    left: -1em;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #000;
}
.sns-link-title .in::before {
    content: '';
    position: absolute;
    transform: rotate(15deg);
    right: -1em;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #000;
}
.sns-link-in {
    margin: 0 3.846%;
}
.sns-link-copy {
    text-align: center;
    margin-bottom: 0.5em;
    line-height: 1.4;
    font-size: 130%;
}
.sns-link-copy .s {
    font-size: 65%;
}
.sns-link-img {
    margin-bottom: 0.75em;
}
.sns-link-ig {
    margin-bottom: 1em;
}
.sns-link-tw {
    margin-bottom: 1em;
}
.sns-link-yt {
    margin-top: 2em;
    padding-top: 1.5em;
    text-align: center;
    border-top: 1px solid #000;
}
.sns-link-yt-sub {
    font-size: 90%;
}
.sns-link-yt-title {
    font-weight: bold;
    font-size: 145%;
    margin-bottom: 0.5em;
}
.sns-title {
    margin-bottom: .5em;
    text-align: center;
    font-size: 100%;
}
.sns-title span {
    display: inline-block;
    position: relative;
    padding: 0 1em;
    font-weight: bold;
    line-height: 1.2;
}
.sns-title span::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
    transform: rotate(-25deg);
}
.sns-title span::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
    transform: rotate(25deg);
}
/* -----------------------------------------
	attention
-----------------------------------------*/
.attention {
    margin: 0 6.66% 1em;
    font-size: 85%;
}
.attention li {
    text-indent: -1em;
    margin-left: 1em;
}
/* -----------------------------------------
contents
-----------------------------------------*/
#container {
    margin: auto;
    width: 100%;
    max-width: 750px;
}
#contents {
    margin: auto;
    font-family: 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    line-height: 1.6;
    font-size: 26px;
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    display: block;
    font-feature-settings: "palt";
}
@media (max-width: 750px) {
    #contents {
        font-size: 3.45vw;
    }
}
.serif {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    letter-spacing: 0.1em;
    /* font-family: 'Noto Serif JP', serif; */
    /* font-family: 'Shippori Mincho', serif; */
}
#contents img {
    width: 100%;
}
/* -----------------------------------------
anchor
-----------------------------------------*/
.anchor {
    padding-top: 150px;
    margin-top: -150px;
    display: block;
    position: relative;
    cursor: default;
    z-index: -1;
}
@media (max-width: 750px) {
    .anchor {
        padding-top: 20.0vw;
        margin-top: -20.0vw;
    }
}
/* -----------------------------------------
page Layout
-----------------------------------------*/
.inner {
    margin: 0 3.3333%;
}
.item-wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.item-wrap p {
    margin-bottom: .85em;
}
.item-cell {
    width: 48.57%;
}
.nav-toggle {
    padding: 1em 0;
}
.nav-toggle a {
    display: block;
    padding: .25em 0 .25em 1em;
    font-weight: normal !important;
    font-size: 90%;
}
.nav-toggle .parents > li > a {
}
.nav-toggle .child {
    margin-left: 1.5em;
    margin-bottom: .5em;
    display: none;
}
.nav-toggle .parents li:first-child .child {
    display: block;
}
.nav-toggle .child > li > a {
}
.nav-close {
    position: fixed;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: 1000;
    /* background-color: rgba(0,0,0,.4); */
    display: none;
}