/*
Theme Name: gussuri yamada
Description:
Version: 0.0.0
*/
@charset "utf-8";
html {
    overscroll-behavior: none;
}

/*游ゴシック
@font-face {
	font-family:'YuGothM';
	src:url('./font/YuGothM.woff') format('woff');
}*/
/*小塚ゴシック
@font-face {
	font-family:'KozGoPr6N-Light';
	src:url('./font/KozGoPr6N-Light.woff') format('woff');
}*/
/*小塚ゴシック regular
@font-face {
	font-family:'KozGoPr6N-Regular';
	src:url('./font/KozGoPr6N-Regular.woff') format('woff');
}*/
/*小塚ゴシック medium
@font-face {
	font-family:'KozGoPr6N-Medium';
	src:url('./font/KozGoPr6N-Medium.woff') format('woff');
}*/
/*小塚ゴシック bold
@font-face {
	font-family:'KozGoPr6N-Bold';
	src:url('./font/KozGoPr6N-Bold.woff') format('woff');
}*/
/*Didot*/
@font-face {
    font-family:'Didot-Italic';
    src:url('./font/Didot Italic.woff') format('woff');
}
/*リュウミン
@font-face {
	font-family:'A-OTF-RyuminPro-Light';
	src:url('./font/A-OTF-RyuminPro-Light.woff') format('woff');
}*/
/*リュウミンBOLD
@font-face {
	font-family:'A-OTF-RyuminPro-Bold';
	src:url('./font/A-OTF-RyuminPro-Bold.woff2') format('woff');
}*/

:root {
    /*--header_height_pc:60px;*/
    /*--header_height_sp:60px;
    --header_height_sp:46px;*/

    --bottom_nav_height:60px;

    --fontMincho:"kozuka-mincho-pr6n", serif;
}
body {
    position:relative;
    font-size:18px;
    background:#fff;
    font-weight: 400;
    font-family: var(--fontMincho);
    color:#000;
    /*overscroll-behavior: none;*/
}
body:not(.topPage) {
    /*background:#fff;*/
    /*padding-top:var(--header_height_pc);*/
}
body:not(.topPage) main {
    /*padding-bottom:5em;*/
}
img {
    width:auto;
    max-width:100%;
    height:auto;
}
a {
    color:#000;
    text-decoration:none;
    cursor:pointer;
}
[data-remodal-target] {
    cursor:pointer;
}
.ac .ac_switch {
    cursor:pointer;
}

/*▼―――――H1タグ―――――▼*/
body .site_h1 {
    font-size:9px;
    position:absolute;
    bottom:calc(var(--bottom_nav_height) + 10px);
    left:0;
    width:100%;
    text-align:center;
    font-family: "Noto Sans JP", sans-serif;
    color:#fff;
    z-index:10;
}
body.gate .site_h1 {
    bottom:5px;
}
/*◆◆◆◆◆◆◆◆◆◆◆◆◆
 * サイト共通設定(アニメーション設定等はいちばん下)
 ◆◆◆◆◆◆◆◆◆◆◆◆◆*/

.pageContents_narrow {
    max-width:430px;
    margin-left:auto;
    margin-right:auto;
}
.pageContents_narrow .page_title {
    padding:2em 0;
    margin-bottom:2em;
}
.pageContents_narrow .page_title h1,
.pageContents_narrow .page_title p {
    font-size:2em;
}
/*▼―――――サイト共通設定PC―――――▼*/
@media only screen and (min-width: 750px) {

    br.sp {
        display:none;
    }

}
/*▼―――――サイト共通設定SP―――――▼*/
@media only screen and (max-width: 750px) {

    br.pc {
        display:none;
    }
    .page_contents_def {
        margin-left:5%;
        margin-right:5%;
    }
    .page_contents_def .page_title {
        padding:2em 0;
        margin-bottom:3em;
        text-align:center;
    }
    .page_contents_def .page_title h1,
    .page_contents_def .page_title p {
        font-size:1.4em;
    }

}


/********************************************************************
 *　//ヘッダー部分
********************************************************************/

/* 左上固定ロゴ*/
.site_logo{
    position: fixed;
    left: 15px;
    /*top:18px;*/
    top:12px;
    transition:.6s;
    z-index:8999;

}
.gate .site_logo,
.ageauth .site_logo{
    display:none;
}
.topPage .site_logo{
    /*mix-blend-mode: exclusion;*/
}
.site_logo img {
    width:auto;
    height:24px;
    height:21px;
    mix-blend-mode: exclusion;
}
/*
body.topPage .site_logo {
	display:none;
}
body.topPage .nav_btn {
	display:none;
}
*/

/*========== トップページのみ　スクロールしたら表示 ==========*/
.topPage .site_logo {
    /*opacity:0;
    transition:.6s;*/
}
.topPage.scroll .site_logo {
    /*opacity:1;*/
}


.header{
    position: fixed;
    left: 0;
    top:0;
    background:#fff;
    width: 100%;
    height: 46px;
    z-index:8001;
    transition:.6s;

}
.gate .header,
.ageauth .header {
    display:none;
}

.topPage .header {
    /*opacity:0;
    transition:.6s;*/
}
.topPage.scroll .header {
    /*opacity:1;*/
}


.header_inner {
    position: relative;
    display:flex;
    align-items:flex-end;

    height: 46px;

    margin-left:auto;
    margin-right:auto;
}
.header_inner .logo{
    width:20%;
    margin-left:15px;
    transition:.2s;
}
.header_inner .logo img {
    width:auto;
    max-height:20px;
}

@media only screen and (max-width: 430px) {
    .header_inner {
        align-items:center;
        /*max-width:430px;*/
        height: 46px;
    }
    .header_inner .logo{

    }
}

/* ★ 【新システム移行時に適用】会員登録・ログイン・マイページ・ログアウトボタン ★*/
.header_inner .memberBtn {
    position:absolute;
    top:0;
    bottom:0;
    right:60px;
    display:flex;
    align-items:center;
    margin:auto;
}
.header_inner .memberBtn a {
    height:38px;
    margin-left:6px;
}
.header_inner .memberBtn a img {
    width:auto;
    height:100%;
}

/* ハンバーガーボタン展開時のメニュー */
.header_nav {
    overflow-y:auto;
    padding-bottom:100px;
}
.header_nav_group {
    /*visibility: hidden;
    opacity: 0;
    transition:.5s;*/
    display:none;
}
.header_nav {
    position: fixed;
    /*left: -320px;*/ /* 左から出てくる */
    left:-100%;
    top: 0;
    box-sizing:border-box;
    width: 500px; /* スマホに収まるサイズ */
    height: 100vh;
    padding-top: 80px;
    background-color: #fff;
    transition: all .6s;
    z-index: 9000;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.header_nav .innder {
    padding:0 4%;
}
.header_menu_logo{
    width:36px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:2em;
}
@media only screen and (max-width: 768px) {
    .header_nav {
        width: 280px;
    }
    .header_menu_logo{
        /*width:20px;*/
    }
}

.header a {
    /*pointer-events:none;*/
}


.header_menu_main{
    margin-bottom:2em;
    letter-spacing:0.1em;
}
.header_menu_main ul{

}
.header_menu_main ul li{
    padding:0.5em 0 0.5em 1em;
}
.header_menu_main ul li a{
    /*font-size:1.3em;*/
    font-size:0.7em;
    position:relative;
    display:inline-block;
    padding:0.5em 0;
    letter-spacing:0.3em;
}
.header_menu_main ul li a::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(9,9,9,0.3);
    bottom: -1px;               /*アンダーラインがaタグの下端から現れる*/
    transform: scale(0, 1);     /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
    transform-origin: left top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
    transition: transform 0.3s; /*変形の時間*/
}
.header_menu_main ul li a:hover::after {
    transform: scale(1.1, 1);     /*ホバー後、x軸方向に1（相対値）伸長*/
}
.header_menu_main ul li a .hover_line{
    display:block;
    transition:.5s;
}
.header_menu_main ul li a .hover_line:hover{
    transform:translateX(0.3em);
}

.header_menu_main ul li a .small{
    font-size:0.7em;
    display:inline-block;
}
@media only screen and (max-width: 430px) {
    .header_menu_main ul li a{
        /*font-size:1.2em;*/
    }
    .header_menu_main ul li a::after {
        display:none;
    }
    .header_menu_main ul li a .hover_line:hover{
        transform:none;
    }
}

.header_menu_main .header_nav_recruit {
    padding-top:1.5em;
    padding-left:1em;
    width:50%;
}


.header_menu_sub{
    position:relative;
    padding-top:1em;
}
.header_menu_sub::after {
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    width:calc(100% - 2em);
    height:1px;
    background:#999;
    margin:auto;
}
.header_menu_sub li{
    padding:0.5em 0 0.5em 1em;
}
.header_menu_sub li a{
    font-size:0.7em;
    display:inline-block;
    padding:0.5em 0;
    letter-spacing:0.3em;
}

.header_menu_sub.subA{
    display:flex;
    margin-bottom:1.5em;
}
.header_menu_sub.subA ul{
    width:50%;
}
@media only screen and (max-width: 768px) {
    .header_menu_sub.subA{
        display:block;
    }
    .header_menu_sub.subA ul{
        width:auto;
    }
}

.header_menu_sub.subB{
    display:flex;
    border-top:solid 1px rgba(9,9,9,0.2);
    padding-top:3em;
    margin-bottom:3em;
}
.header_menu_sub.subB ul{
    width:50%;
}

/* snsアイコン */
.header_menu_sub.subB .header_sns_section {
    display:flex;
    justify-content:flex-start;
    align-items:center;
    width:50%;
    margin:2em auto 0;
}
.header_menu_sub.subB .header_sns_section a {
    width:1.8em;
    margin:0 0.5em;
}
@media only screen and (max-width: 768px) {
    .header_menu_sub.subB{
        display:block;
        margin-bottom:5em;
    }
    .header_menu_sub.subB ul{
        width:auto;
    }
    .header_menu_sub.subB .header_sns_section {
        justify-content:center;
        width:auto;
    }
    .header_menu_sub.subB .header_sns_section a {
        width:1.5em;
        margin:0 0.7em;
    }
}

.header_nav_list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.header_nav_group_title {
    padding:0.6em;
    margin:0 0.5em;
    text-align: left;
}
.header_nav_group_title a {
    font-size:0.9em;
    display: block;
    padding: 0.1em 0;

    text-decoration: none;
    /*color: #333;*/
}
.header_nav_group_title a:hover {

}

/*starロゴ*/
.header_inner .logo_star{
    width:75px;
    margin-left:1em;
}
.header_inner .logo_star img {
    width:auto;
    /*max-height:20px;*/
}


/*▼―――――ハンバーガーボタン―――――▼*/
.nav_btn {
    position: absolute;
    right: 20px;
    top: 0;
    bottom:0;

    width: 24px; /* クリックしやすい幅 */
    height: 40px; /* クリックしやすい高さ */
    margin:auto;
    cursor: pointer;
    z-index: 9000;
}

.top-test .nav_btn::after,
.top-test2 .nav_btn::after{
    content:"MENU";
    font-size:0.7em;
    position:absolute;
    top:0;
    bottom:0;
    left:-48px;
    width:100%;
    height:1em;
    margin:auto;
    font-family: "Noto Sans JP", sans-serif;
}


/*========== トップページのみ　スクロールしたら表示 ==========*/
.topPage .nav_btn {
    /*opacity:0;
    transition:.6s;*/
}
.topPage.scroll .nav_btn {
    /*opacity:1;*/
}


.nav_btn_border {
    position: absolute;
    /*left: 11px;*/
    width: 24px;
    height: 2px;
    background-color: #000;
    transition: all .6s;
}

.nav_btn_border_top {
    top: 16px;
    left:0;
    transform-origin: center center;
}
.nav_btn_border_center {
    top: 20px;
    display:none;
}
.nav_btn_border_bottom {
    bottom: 15px;
    left:0;
    transform-origin: center center;
}
.nav_btn_overlay {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #333;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
}
/* ハンバーガーメニュー表示されたとき */
.nav_open .header_nav {
    left: 0;
}
.nav_open .nav_btn_overlay {
    opacity: .8;
    visibility: visible;
}
.nav_open .nav_btn_border_top {
    transform: rotate(45deg);
    top:19px;
}
/*.nav_open .nav_btn_border_center {
	width: 0;
	left: 50%;
}*/
.nav_open .nav_btn_border_bottom {
    transform: rotate(-45deg);
    bottom: 19px;
}

/********************************************************************
 *　//フッター base
********************************************************************/
.footer_temp {
    background:#fff;
    padding:1em 0;
    text-align:center;

}



.footer {
    position:relative;
    background:#1c1c1c;
    color:#e5e7eb;
    font-family: "Noto Sans JP", sans-serif;
    z-index:1;

}
.footer a {
    color:#e5e7eb;
}


/*▼―――――フッターコンテンツbase―――――▼*/
.footer_content {
}

.copyright {
    font-size:14px;
    width:100%;
    padding:60px 0 95px;
    text-align:center;
}
.copyright span {
    display:block;
    transform:scale(0.8);
    width:100%;
    letter-spacing:0.2em;
}
/********************************************************************
 *　//フッターPC
********************************************************************/



/*▼―――――フッターコンテンツPC―――――▼*/

.footer_content {
    box-sizing:border-box;
    padding:4em 0 0;
}

.footer_logo_section {
    width:200px;
    margin:auto;
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(201deg) brightness(106%) contrast(106%);
}

.fotter_section_wrapper {
    display:flex;
    flex-direction:column;
    justify-content:center;
    margin-bottom:4em;

}
.footer_link_section:nth-of-type(1),
.footer_link_section:nth-of-type(2){
    margin-bottom:1em;
}

.footer_sns_section {
    display:flex;
    justify-content:center;
    padding:2em 0;
}
.footer_sns_section img {
    width:80%;
    height:80%;
}
.footer_sns_section a {
    text-align:center;
    aspect-ratio:1/1;
    border-radius:50%;
    width:3.2em;
    margin:0 0.6em;
}


.footer_link_section {
    display:flex;
    justify-content:center;
}
.footer_link_section li {
    position:relative;
    font-size:0.6em;
    font-family: "Noto Sans JP", sans-serif;
    padding:0.1em 0;
    margin:0 1em 0 1em;
}
.footer_link_section li:not(:first-child)::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:-1em;
    background:#fff;
    width:1px;
    height:100%;
    margin:auto;
}

.footer_logo_section_star {
    width:90px;
    margin:auto;
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(201deg) brightness(106%) contrast(106%);
}

/********************************************************************
 *　//フッターSP
********************************************************************/
@media only screen and (max-width: 430px) {


    .footer_logo_section {
        width:180px;
        margin:auto;
    }

    .footer_sns_section a {
        width:3.4em;
    }

    .footer_link_section li {
        /*font-size:0.8em;*/
    }


}/* //フッターSP */




/********************************************************************
 *　//TELボタン
********************************************************************/
.bottom_tel {
    position:fixed;
    bottom:calc(var(--bottom_nav_height) + 5px);
    /*bottom:calc(100% + 20px);*/
    right:5px;
    background:url(../images/float_btn_tel.png) center center no-repeat;
    background-size:cover;
    width:84px;
    height: 99px;
    z-index:9000;
}
.gate .bottom_tel,
.ageauth .bottom_tel,
body.webreserve .bottom_tel {/* 非表示ページ */
    display:none;
}
.bottom_tel a {
    position: relative;
    display: block;
    height: 100%;
}


/*========== トップページのみ　スクロールしたら表示 ==========*/
.topPage .bottom_tel {
    opacity:0;
    transition:.6s;
    pointer-events:none;
}
.topPage.scroll .bottom_tel {
    opacity:1;
    pointer-events:inherit;
}



/********************************************************************
 *　//ページトップボタン
********************************************************************/
.page_top {
    position:fixed;
    bottom:calc(var(--bottom_nav_height) + 110px);
    /*bottom:calc(100% + 20px);*/
    right:5px;
    background:url(../images/page_top.png) center center no-repeat;
    background-size:cover;
    border-radius: 50%;
    width:50px;
    height: 50px;
    z-index:9000;
}
.gate .page_top,
.ageauth .page_top,
body.webreserve .page_top {/* 非表示ページ */
    display:none;
}
.page_top a {
    position: relative;
    display: block;
    height: 100%;
}


/*========== トップページのみ　スクロールしたら表示 ==========*/
.topPage .page_top {
    opacity:0;
    transition:.6s;
}
.topPage.scroll .page_top {
    opacity:1;
}


/********************************************************************
 *　//フッター固定ナビゲーション bottom_nav
********************************************************************/
.bottom_nav {
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    height:var(--bottom_nav_height);
    z-index:8000;
}
.gate .bottom_nav,
.ageauth .bottom_nav,
body.webreserve .bottom_nav {/* 非表示ページ */
    display:none;
}

.bottom_nav_link_frame {
    background:#fff;
    width:100%;
    height:var(--bottom_nav_height);
}
.bottom_nav_link {
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    justify-content:space-between;
    width:100%;
    max-width:430px;
    font-family: "Noto Sans JP", sans-serif;
}
.bottom_nav_link li {
    font-size:0.58em;
    width:25%;
    height:var(--bottom_nav_height);
}
@media only screen and (max-width: 430px) {
    .bottom_nav_link li {
        font-size:2.4vw;
    }
}
.bottom_nav_link a {
    display:flex;
    justify-content:center;
    align-items:center;

    height:100%;
    color:#000;
}
.bottom_nav_link a span {

    /*width:100%;*/
    padding-top:0.5em;
    padding-bottom:0.5em;
    padding-left:2.4em;
    text-align:center;
    background:#eee;
    letter-spacing:0.08em;
}
.bottom_nav_link .service a span {
    background:url(../images/btm_nav_icon_service.png) left center no-repeat;
    background-size:auto 100%;
}
.bottom_nav_link .system a span {
    background:url(../images/btm_nav_icon_system.png) left center no-repeat;
    background-size:auto 100%;
}
.bottom_nav_link .ladys a span {
    background:url(../images/btm_nav_icon_ladys.png) left center no-repeat;
    background-size:auto 100%;
}
.bottom_nav_link .schedule a span {
    background:url(../images/btm_nav_icon_schedule.png) left center no-repeat;
    background-size:auto 100%;
}

/*========== トップページのみ　スクロールしたら表示 ==========*/
.topPage .bottom_nav {
    opacity:0;
    transition:.6s;
    pointer-events:none;
}
.topPage.scroll .bottom_nav {
    opacity:1;
    pointer-events:inherit;
}

/********************************************************************
 *　//【新システム移行時に適用】フッター固定ボタン電話・スタッフチャット・WEB予約
********************************************************************/
.btmButton {
    position:fixed;
    box-sizing:border-box;
    width:100%;
    max-width:430px;
    left:50%;
    transform:translateX(-50%);
    bottom:3px;
    display:flex;
    justify-content:flex-end;
    align-items:center;
    z-index:10;
}
.btmButton a {
    height:38px;
    margin-right:4px;
}
.btmButton a img {
    width:auto;
    height:100%;
}



/********************************************************************
 *　//PC表示の画面左側スターロゴ
********************************************************************/


:root {
    --pc_bg_star_logo_width:240px;
}
.pc_bg_star_logo {
    position: fixed;
    top:50%;
    transform: translateY(-50%);
    left: 0;
    display:flex;
    justify-content:center;
    align-items:center;
    width: calc((100% - 430px) / 2);
    text-align: center;
    z-index:0;
}
.pc_bg_star_logo img {
    width: 240px;
    max-width:auto;
}
@media only screen and (max-width:910px) {
    .pc_bg_star_logo a {
        position:absolute;
        right:0;
        width:240px;
    }
}
@media only screen and (max-width:430px) {
    .pc_bg_star_logo img {
        display:none;
    }
}


/********************************************************************
 *　//相互リンクバナーとテキスト（年齢認証とダミー年齢認証）
********************************************************************/
.linkContents {
    padding-left:6%;
    padding-right:6%;
}
.linkContents .imgBanner,
.linkContents .textLink {

    margin-bottom:5em;
    text-align:center;
}
.ageAuthContents .bnPriority {
    margin-bottom:2.5em;
}
.ageAuthContents .bnPriority img,
.linkContents .imgBanner img {
    /*font-size:0;
    line-height:0;*/
    font-size:0;
    line-height:1;
    width:auto;
    max-width:100%;
    height:auto;
    margin-bottom:8px;
}
.linkContents .imgBanner p.bannerNotice {
    font-size:0.8em;
    margin-bottom:8px;
}
.linkContents .imgBanner p:not(.bannerNotice) { /*バナーの下にテキストがある場合はpタグに入れる*/
    display:inline-block;
    margin-bottom:8px;
    text-align:center;
}
.linkContents textarea {
    box-sizing:border-box;
    width:100%;
}
.linkContents br {
    line-height:1;
}
.linkContents table td {
    vertical-align:middle;
}



/********************************************************************
 *　//その他共通設定
********************************************************************/

/*ぼかしから表示
.blur_in{
  filter: blur(20px);
  opacity: 0;
  transition: all .5s ease-out;
  transition-delay: 0.1s;
}
.blur_in06s{
  filter: blur(20px);
  opacity: 0;
  transition: all .5s ease-out;
  transition-delay: .6s;
}
.blur_in1s{
  filter: blur(20px);
  opacity: 0;
  transition: all .5s ease-out;
  transition-delay: 1s;
}
.blur_in_on {
  filter: blur(0);
  opacity: 1;
}
*/

/*ズームイン表示*/
.zoomIn,.zoomIn1s,.zoomIn2s {
    opacity: 0;
}
.zoomIn_on {
    animation: zoomIn .8s ease-out forwards;
}
@keyframes zoomIn {
    0% {
        opacity:0;
        transform:scale(0);
    }
    100% {
        opacity:1;
        transform:scale(1);
    }
}


/*右からスライドイン(未使用)*/
.rightIn {
    opacity:0;
    transform:translateX(100vw);
}
.rightIn_on {
    animation: rightIn .3s ease-out;
}
@keyframes rightIn {
    0% {
        transform:translateX(100vw);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}


/*左からスライドイン(未使用)*/
.leftIn {
    opacity:0;
}
.leftIn_on {
    animation: leftIn .3s ease-out;
}
@keyframes leftIn {
    0% {
        transform:translateX(-100vw);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}

/* タブでコンテンツ切替 */
.tabSelect {
    /*display:flex;*/
    width:100%;
}
.tabSelect .tab {
    transition:.2s;
    cursor:pointer;
}
.tabSelect .tab.active {
    cursor:inherit;
}

.tabTarget .panel {
    display:none;
    transition:.2s;
}
.tabTarget .panel.show {
    display:block;
}


/* ▼箇条書きリスト(中黒)*/
ul.pointList {
    padding-left:0;
}
ul.pointList li,
p.pointList,
span.pointList {
    position: relative;
    display: block;
    line-height:1.6;
    padding:0.2em 0 0.2em 1.5em;
    margin-bottom: 0.7em;
}
ul.pointList li::before,
p.pointList::before,
span.pointList::before {
    content: "・";
    position: absolute;
    left:0;
}

/*==========delighter.js 依存スクロールアニメーション ==========*/
/*ズームアウト*/
.delighterZoomOut.delighter {
    opacity:0;
}
.delighter.delighterZoomOut.started {
    animation: zoomOut .3s ease-out;
}
@keyframes zoomOut {
    0% {
        transform:scale(3);
    }
    100% {
        opacity:1;
        transform:scale(1);
    }
}


/*ズームイン
.delighterZoomIn.delighter {
	opacity:0;
}
.delighter.delighterZoomIn.started {
	animation: ZoomIn .8s ease-out;
}
@keyframes ZoomIn {
  0% {
	  opacity:0;
    transform:scale(0);
  }
  100% {
    opacity:1;
    transform:scale(1);
  }
}
*/

/*スライドイン（左から）
.delighterSlideInLeft.delighter {
	opacity:0;
}
.delighter.delighterSlideInLeft.started {
	animation: SlideInLeft .9s ease-out;
}
*/
@keyframes SlideInLeft {
    0% {
        transform:translateX(-100vw);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}
@keyframes SlideInLeft_sp {
    0% {
        transform:translateX(-100%);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}


/*スライドイン（右から）
.delighterSlideInRight.delighter {
	opacity:0;
}
.delighter.delighterSlideInRight.started {
	animation: SlideInRight .9s ease-out;
}
@keyframes SlideInRight {
  0% {
    transform:translateX(100vw);
  }
  100% {
    opacity:1;
    transform:translateX(0);
  }
}
*/


/*バウンス(大きくなってから通常サイズ) */
.delighterBounce.delighter {
    opacity:0;
}
.delighter.delighterBounce.started {
    animation: bounce .4s linear;
}
@keyframes bounce {
    0% {
        transform:scale(0.3);
    }
    50% {
        opacity:1;
        transform:scale(1.5);
    }
    100% {
        opacity:1;
        transform:scale(1);
    }
}



.delighter.delighter.started {
    transform:none;
    opacity:1;
}


/*下からスライドアップ設定(各所)
.slide_up,.slide_up1s {
  display:block;
  overflow: hidden;
}
.slide_up span,
.slide_up1s span{
  display: block;
  animation-delay: 0.3s;
  transition: transform 1s;
  transition-timing-function: cubic-bezier(0.090, 0.630, 0.225, 1.000);
  transform: translate3d(0, 100%, 0);
}
.slide_up span.slide_up_on,
.slide_up1s span.slide_up_on{
  transform: translate3d(0, 0, 0);
}
*/
/*右側から紙芝居表示
.curtain {
    clip-path: inset(0 -20% 0 100%);
    transition: clip-path 2s cubic-bezier(0.19, 1, 0.22, 1);
    transition-delay: 0s;
}
.curtain.curtain_open {
    clip-path: inset(0 0 -20% 0);
}
*/




/*▼――その他共通設定SP――▼*/
@media only screen and (max-width: 768px) {




}/*▲―――――その他共通設定SP―――――▲*/



/********************************************************************
 *　//[ページ]404エラーページ
********************************************************************/
.notFoundContents {
    padding:10em 0 0;
    text-align:center;
}
.notFoundContents .text {
    font-size:1.4em;
    line-height:1.6;
    width:100%;
}
.notFoundContents .link {
    font-size:1em;
    width:100%;
    padding:3em 0 4em;
}
.notFoundContents .link a {
    position:relative;
    line-height:2.6;
    height:2.6em;
    border:solid 1px #000;
    border-radius:1.3em;
    box-sizing:border-box;
    display:block;
    width:260px;
    max-width:80%;
    padding:0 3em;
    margin: 0 auto 2em;
}
.notFoundContents .link a::before {
    content:"";
    position:absolute;
    top:0; right:0.5em; bottom:0;
    border-top:1px solid rgba(0,0,0,1);
    border-right:1px solid rgba(0,0,0,1);
    margin:auto;
    width:4px;
    height:4px;
    transform: rotate(45deg);
}

.notFoundContents .menus {
    display:flex;
    justify-content:center;
    padding-bottom:6em;
}
.notFoundContents .menus a {
    /*font-size:0.9em;*/
    position:relative;
    line-height:2.6;
    height:2.6em;
    border:solid 1px #000;
    border-radius:1.3em;
    display:inline-block;
    padding:0 1.8em;
    margin:0 0.5em;
    color:#000;
}
.notFoundContents .menus a::before {
    content:"";
    position:absolute;
    top:0; right:0.5em; bottom:0;
    border-top:1px solid rgba(0,0,0,1);
    border-right:1px solid rgba(0,0,0,1);
    margin:auto;
    width:4px;
    height:4px;
    transform: rotate(45deg);
}

@media screen and (max-width:430px){

    .notFoundContents {
        font-size:0.8em;
        padding-top:200px;
    }
}


/********************************************************************
 *　//プライバシーポリシー・利用規約など
********************************************************************/
.privacy_contents {
    line-height:1.4;
    text-align:left;
    font-family: "Noto Sans JP", sans-serif;
}
.privacy_contents_title {
    font-size:0.8em;
    margin-bottom:1em;
    text-align:center;
}
.privacy_contents_head_text {
    font-size:0.7em;
    margin-bottom:1.5em;
}
.privacy_contents dl {
    font-size: 0.7em;
    line-height:1.4;
    margin-bottom: 3em;
}
.privacy_contents dl dt {
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
}
.privacy_contents dl dd {

}
.privacy_contents dl dd p {
    margin-bottom: 0.5em;
}
.privacy_contents dl dd > ol {
    list-style-position: outside;
    list-style-type: decimal;
    margin-top:0.5em;
    margin-left: 1.5em;
}
.privacy_contents dl dd > ol > ol {
    list-style-position: outside;
    list-style-type: lower-roman;
    margin-left: 1.5em;
    margin-bottom: 0.5em;
}
.privacy_contents dl dd li {
    margin-bottom: 0.5em;
}
.privacy_contents dl dd li:last-child {
    margin-bottom: 0;
}
