@charset "UTF-8";

/**************************************************/
/* 構造 */
/**************************************************/
body {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    background: #fff;
    letter-spacing: 1.5px;
    font-size: 20px;
    font-family: "Noto Sans JP", sans-serif;
}

.shutter {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #1e1e1e;
    z-index: 9999;
    -webkit-animation: byeShutter 2.6s forwards;
    animation: byeShutter 2.6s forwards;
}
.shutter::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    background-color: #f3f3f3;
    width: 0;
    height: 1px;
    -webkit-animation: shutterOpen 2.6s forwards;
    animation: shutterOpen 2.6s forwards;
}

.content {
    -webkit-animation: contentScale 2.6s forwards;
    animation: contentScale 2.6s forwards;
}

@-webkit-keyframes byeShutter {
    70% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        display: none;
        z-index: -1;
    }
}

@keyframes byeShutter {
    70% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        display: none;
        z-index: -1;
    }
}
@-webkit-keyframes shutterOpen {
    0% {
        width: 0;
        height: 1px;
    }
    50% {
        width: 100%;
        height: 1px;
    }
    90% {
        width: 100%;
        height: 100%;
    }
    100% {
        width: 100%;
        height: 100%;
    }
}
@keyframes shutterOpen {
    0% {
        width: 0;
        height: 1px;
    }
    50% {
        width: 100%;
        height: 1px;
    }
    90% {
        width: 100%;
        height: 100%;
    }
    100% {
        width: 100%;
        height: 100%;
    }
}
@-webkit-keyframes contentScale {
    70% {
        transform: perspective(800px) scale(0.9) rotateX(15deg);
    }
    100% {
        transform: perspective(800px) scale(1) rotateX(0);
    }
}
@keyframes contentScale {
    70% {
        transform: perspective(800px) scale(0.9) rotateX(15deg);
    }
    100% {
        transform: perspective(800px) scale(1) rotateX(0);
    }
}

/* 上からフェードイン */
.slide-top {
    opacity: 0;
    transform: translate(0, -50px);
    transition: all 1s 2s ease-out;
}

/* 下からフェードイン */
.slide-bottom {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 1s 0.5s ease-out;
}

/* 下からフェードイン 遅く */
.slide-bottomoso {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 1s 1.5s ease-out;
}

/* 左からフェードイン */
.slide-left {
    opacity: 0;
    transform: translate(-50px, 0);
    transition: all 1s 0s ease-out;
}

/* 右からフェードイン */
.slide-right {
    opacity: 0;
    transform: translate(50px, 0);
    transition: all 1s 0s ease-out;
}

.eigo {
    font-family: "Josefin Sans", sans-serif;
}

.g40 {
    line-height: 40px;
}

.g25 {
    line-height: 25px;
}

a {
    transition: 0.5s;
    display: block;
}

a:hover {
    opacity: 0.5;
}

.mb10 {
    margin-bottom: 10px;
}

#pagetop {
    display: inline-block;
    position: fixed;
    bottom: 0;
    right: 0;
}

#pagetop a {
    padding: 15px 20px;
    display: block;
    background: #de1b22;
    color: #fff;
    text-align: center;
    mix-blend-mode: multiply;
}

/*------------------------------

  ここから下がハンバーガーメニュー
  に関するCSS

------------------------------*/
.drawer {
    position: fixed;
    top: 0;
    right: 0;
    color: #fff;
    z-index: 100;
}

/* チェックボックスは非表示に */
.drawer-hidden {
    display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer-open {
    display: flex;
    right: 0;
    height: 80px;
    width: 80px;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 100; /* 重なり順を一番上に */
    cursor: pointer;
    background-color: #000;
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
    content: "";
    display: block;
    height: 2px;
    width: 30px;
    border-radius: 3px;
    background: #fff;
    transition: 0.5s;
    position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
    bottom: 10px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
    top: 10px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked ~ .drawer-open span {
    background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked ~ .drawer-open span::before {
    bottom: 0;
    transform: rotate(45deg);
}

#drawer-check:checked ~ .drawer-open span::after {
    top: 0;
    transform: rotate(-45deg);
}

/* メニューのデザイン*/
.drawer-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%; /* メニューを画面の外に飛ばす */
    z-index: 99;
    background: rgba(0, 0, 0, 0.8);
    transition: 0.5s;
    display: flex;
    justify-content: center;
    align-items: center;
}

.drawer-list li {
    margin: 30px auto;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked ~ .drawer-content {
    left: 0; /* メニューを画面に入れる */
}

.sp-insta {
    border: #fff 1px solid;
    padding: 10px 15px;
    border-radius: 5px;
}
/**************************************************/
/* 背景動画 */
/**************************************************/
#doga {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 86vh;
}

#doga video {
    position: fixed;
    top: 43%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #fff;
    z-index: -10;
}

/**************************************************/
/* ヘッダー・NAV */
/**************************************************/
header {
    position: relative;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

#uxtop {
    left: 50px;
    top: 40px;
    width: 230px;
    position: absolute;
    z-index: 100;
}

#uxtop img {
    max-width: 100%;
}

#insta {
    color: #fff;
    background: linear-gradient(
        90deg,
        rgb(244, 0, 2),
        rgb(214, 0, 92),
        rgb(185, 0, 178)
    );
    border-radius: 5px;
    font-size: 35px;
    position: fixed;
    top: 90px;
    right: 15px;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 99;
}

#insta a {
    position: absolute;
    top: 3px;
    right: 0;
    width: 50px;
    height: 50px;
}

.youtube {
    position: absolute;
    bottom: 40%;
    left: 0;
    right: 0;
    margin: 0 auto;
    font-size: 30px;
    color: #fff;
    mix-blend-mode: exclusion;
}

.youtube h2 {
    background-color: rgba(0, 0, 0, 0.3);
    border: solid 1px rgba(255, 255, 255, 0.1);
    display: inline-block;
    mix-blend-mode: exclusion;
}

/* 疑似要素で文字の横に配置 */
.side {
    display: flex;
    align-items: center;
    padding: 10px 20px 5px;
}
.side::after {
    content: "";
    width: 30px;
    height: 6px;
    border-bottom: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: skew(45deg);
    margin-left: 5px;
    margin-bottom: 10px;
}

#sukuroru a {
    display: inline-block;
    position: absolute;
    right: 30px;
    bottom: 0;
    top: 20%;
    z-index: 2;
    padding: 10px 10px 110px;
    overflow: hidden;
    color: #fff;
    font-size: 14px;
    font-family: "Josefin Sans", sans-serif;
    line-height: 1;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    writing-mode: vertical-lr;
}

#sukuroru a::after {
    content: "";
    position: absolute;
    bottom: 0;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 100px;
    background: #fff;
    animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes sdl {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    50.1% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }
    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}

#topics {
    width: 100%;
    padding: 20px;
    text-align: center;
    margin: 0 auto;
    background: url(../img/top/topics.png) no-repeat #111;
    background-position: 10px center;
}

#topics_box {
    width: 1200px;
    text-align: center;
    margin: 60px auto;
    display: flex;
    justify-content: space-between;
    color: #fff;
}
#topics_box h2 {
    font-weight: bold;
    color: transparent;
    text-stroke: 0.9px white;
    -webkit-text-stroke: 0.9px white;
    font-size: 85px;
}

#topics_box h3 {
    text-align: left;
    font-size: 30px;
    border-top: 1px #fff solid;
    display: inline-block;
    padding-top: 20px;
}
.top_left {
    text-align: left;
    width: 30%;
}
.top_right {
    text-align: left;
    width: 70%;
}

.top_right li {
    display: flex;
    font-size: 18px;
    margin: 25px auto;
}

.top_right span {
    padding: 0 1%;
    font-size: 15px;
}

.top_right a {
    text-decoration: underline;
}

/**************************************************/
/* container */
/**************************************************/
#container {
    margin: 0 auto;
    width: 100%;
    text-align: center;
    background: #fff;
    padding-top: 100px;
}

#top_eng {
    background: linear-gradient(180deg, #fff 0%, #fff 40%, #eee 40%, #eee 100%);
    position: relative;
    margin: 0 auto;
    text-align: center;
    width: 100%;
    padding: 10vh 0 15vh;
}

.top_eng_img1 {
    text-align: right;
    z-index: 1;
}

.top_eng_img1 img {
    width: 80%;
    margin: 0 auto;
}

.top_eng_t {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    width: 85%;
    text-align: left;
    margin: 0 auto;
}

.top_eng_t h2 {
    font-size: 10vw;
    position: relative;
    margin: 0 auto;
    text-align: left;
    font-weight: bold;
    text-shadow: 0 0 2px #fff;
}

.top_eng_t h3:before {
    content: "";
    position: absolute;
    left: 0;
    top: -15%; /*線の上下位置*/
    display: inline-block;
    width: 100%; /*線の長さ*/
    height: 1px; /*線の太さ*/
    background-color: black; /*線の色*/
}

.top_eng_t h3 {
    font-size: 5vw;
    text-align: left;
    font-weight: bold;
    text-shadow: 0 0 2px #fff;
    display: inline-block;
}

.top_eng_c {
    position: absolute;
    z-index: 3;
    text-align: left;
    margin: 0 auto;
    top: 33vh;
    left: 25vw;
    text-shadow: 0 0 5px #fff;
    width: 30vw;
}

.top_eng_c h2 {
    font-size: 2em;
    margin-bottom: 2vh;
    font-weight: bold;
}

.top_eng_img2 {
    position: absolute;
    z-index: 2;
    left: 2vw;
    bottom: 3vh;
    width: 70%;
}

.top_eng_img2 img {
    width: 100%;
}

#top_vitv {
    text-align: center;
    margin: 0 auto;
    display: flex;
    padding: 10vh 0;
    width: 100%;
}

.top_v,
.top_t {
    width: 50%;
    position: relative;
    margin: 0 auto;
    text-align: center;
}

.top_t {
    margin-top: 7vh;
}

.top_vimg img,
.top_timg img {
    width: 100%;
    padding-top: 10vh;
}

.top_vt,
.top_tt {
    position: absolute;
    z-index: 3;
    left: 0;
    right: 0;
    width: 85%;
    margin: 0 auto;
}

.top_vt,
.top_tt {
    top: 0;
}

.top_vt h2 {
    font-size: 8em;
    position: relative;
    margin: 0 auto;
    text-align: left;
    font-weight: bold;
    text-shadow: 0 0 2px #fff;
}

.top_vt,
.top_vt h2,
.top_vt h3 {
    text-align: left;
}
.top_tt,
.top_tt h2,
.top_tt h3 {
    text-align: right;
}

.top_vt h2,
.top_tt h2 {
    font-size: 9em;
    position: relative;
    margin: 0 auto;
    font-weight: bold;
    text-shadow: 0 0 5px #fff;
}

.top_vt h3:before,
.top_tt h3:before {
    content: "";
    position: absolute;
    top: -15%; /*線の上下位置*/
    display: inline-block;
    width: 100%; /*線の長さ*/
    height: 1px; /*線の太さ*/
    background-color: black; /*線の色*/
}

.top_vt h2:before {
    left: 0;
}

.top_tt h2:before {
    right: 0;
}

.top_vt h3,
.top_tt h3 {
    font-size: 4em;
    font-weight: bold;
    text-shadow: 0 0 2px #fff;
    display: inline-block;
}

.top_vc,
.top_tc {
    position: absolute;
    z-index: 3;
    margin: 0 auto;
    width: 28vw;
}

.top_vc {
    text-align: left;
    top: 25vh;
    right: 3vw;
    text-shadow: 0 0 5px #fff;
}

.top_tc {
    text-align: left;
    bottom: 10vh;
    left: 4vw;
    color: #fff;
    text-shadow: 0 0 5px #000;
}

.top_vc h2,
.top_tc h2 {
    font-size: 2em;
    margin-bottom: 2vh;
    font-weight: bold;
}

#top_st,
#top_ma {
    background: linear-gradient(-90deg, #fff 0%, #fff 50%, #eee 50%, #eee 100%);
    position: relative;
    margin: 10vh auto 0;
    text-align: center;
    width: 100%;
    padding: 10vh 0 15vh;
}

#top_web {
    background: linear-gradient(-90deg, #eee 0%, #eee 50%, #fff 50%, #fff 100%);
    position: relative;
    margin: 20vh auto 20vh;
    text-align: center;
    width: 100%;
    padding: 10vh 0 15vh;
}

.top_st_img,
.top_ma_img {
    text-align: right;
    z-index: 1;
    padding-top: 10vh;
}

.top_web_img {
    text-align: left;
    z-index: 1;
    padding-top: 10vh;
}

.top_st_img img,
.top_web_img img,
.top_ma_img img {
    width: 80%;
    margin: 0 auto;
}

.top_st_t,
.top_ma_t {
    position: absolute;
    z-index: 3;
    top: 10vh;
    left: 0;
    right: 0;
    width: 85%;
    text-align: left;
    margin: 0 auto;
}

.top_web_t {
    position: absolute;
    z-index: 3;
    top: 10vh;
    left: 0;
    right: 0;
    width: 85%;
    text-align: right;
    margin: 0 auto;
}

.top_st_t h2,
.top_ma_t h2 {
    font-size: 10vw;
    position: relative;
    margin: 0 auto;
    text-align: left;
    font-weight: bold;
    text-shadow: 0 0 3px #fff;
}

.top_web_t h2 {
    font-size: 10vw;
    position: relative;
    margin: 0 auto;
    text-align: right;
    font-weight: bold;
    text-shadow: 0 0 3px #fff;
}

.top_st_t h3:before,
.top_web_t h3:before,
.top_ma_t h3:before {
    content: "";
    position: absolute;
    left: 0;
    top: -15%; /*線の上下位置*/
    display: inline-block;
    width: 100%; /*線の長さ*/
    height: 1px; /*線の太さ*/
    background-color: black; /*線の色*/
}

.top_st_t h3,
.top_ma_t h3 {
    font-size: 5vw;
    text-align: left;
    font-weight: bold;
    display: inline-block;
    text-shadow: 0 0 3px #fff;
}

.top_web_t h3 {
    font-size: 5vw;
    text-align: right;
    font-weight: bold;
    display: inline-block;
    text-shadow: 0 0 3px #fff;
}

.top_st_c {
    position: absolute;
    z-index: 3;
    text-align: left;
    margin: 0 auto;
    bottom: 25vh;
    right: 5vw;
    text-shadow: 0 0 5px #000;
    width: 30vw;
    color: #fff;
}

.top_ma_c {
    position: absolute;
    z-index: 3;
    text-align: left;
    margin: 0 auto;
    top: 35vh;
    right: 5vw;
    text-shadow: 0 0 5px #000;
    width: 30vw;
    color: #fff;
}

.top_web_c {
    position: absolute;
    z-index: 3;
    text-align: left;
    margin: 0 auto;
    top: 35vh;
    left: 5vw;
    text-shadow: 0 0 5px #000;
    width: 30vw;
    color: #fff;
}

.top_st_c h2,
.top_web_c h2,
.top_ma_c h2 {
    font-size: 2em;
    margin-bottom: 2vh;
    font-weight: bold;
}

#top_re {
    width: 100%;
    margin: 10vh auto 0;
    background: linear-gradient(
        180deg,
        #fff 0%,
        #fff 50%,
        #111111 50%,
        #111111 100%
    );
    color: #fff;
    position: relative;
    padding-bottom: 5vh;
}

.top_re_img {
    width: 80%;
    text-align: center;
    margin: 0 auto;

    z-index: 1;
}

.top_re_img img {
    width: 100%;
}

.top_re_box {
    position: absolute;
    top: 12vh;
    left: 0;
    right: 0;
    z-index: 3;
}

.top_re_t h2 {
    font-size: 8vw;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    text-shadow: 0 0 2px #02498d;
    position: relative;
}

.top_re_t h3:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: -30%; /*線の上下位置*/
    display: inline-block;
    width: 100%; /*線の長さ*/
    height: 1px; /*線の太さ*/
    background-color: #fff; /*線の色*/
}

.top_re_t h3 {
    font-size: 2vw;
    text-align: center;
    font-weight: bold;
    text-shadow: 0 0 2px #02498d;
    display: inline-block;
}

.top_re_c {
    margin-top: 5vh;
}

.top_re_c p {
    mix-blend-mode: overlay;
    text-shadow: 0 0 5px #02498d;
}

.top_re_c .botan {
    width: 30vw;
    text-align: center;
    margin: 0 auto;
}

/*ボタン*/
.botan {
    text-shadow: 0 0 10px #000;
}
.btn,
a.btn,
button.btn {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2;
    position: relative;
    display: inline-block;
    padding: 1rem 4rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #fff;
    border-radius: 0.5rem;
    width: 100%;
    margin-top: 20px;
}

a.btn-border-shadow {
    padding: calc(1.5rem - 12px) 3rem 1.5rem;
}

a.btn-border-shadow:before {
    position: absolute;
    top: -6px;
    left: -6px;

    width: 100%;
    height: 100%;

    content: "";
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;

    border: 1px solid #fff;
}

a.btn-border-shadow:hover {
    padding: calc(1.5rem - 6px) 3rem;
}

a.btn-border-shadow:hover:before {
    top: 0;
    left: 0;
}

a.btn-border-shadow--color {
    border-radius: 0;
    background: #de1b22;
    mix-blend-mode: hard-light;
}

a.btn-border-shadow--color:before {
    border-radius: 0;
}

.site-header {
    background: #fff;
    padding: 20px;
    position: absolute;
    justify-content: space-between;
    width: 100%;
    z-index: 98;
    left: 0;
    right: 0;
    background-color: rgba(255, 255, 255, 0.9);
}
.site-header.fixed {
    position: fixed;
    top: 0px;
    background-color: rgba(0, 0, 0, 0.9);
    color: #fff;
}

.anka {
    display: flex;
    justify-content: space-around;
    width: 1024px;
    text-align: center;
    margin: 0 auto;
    border-bottom: #ccc;
}

.anka li {
    padding: 10px 0;
    width: 16%;
}

.anka li + li {
    border-left: 1px solid #ccc;
}

.business_img {
    text-align: center;
    margin: 0 auto;
    position: relative;
    color: #fff;
    font-weight: bold;
    width: 100%;
}

.business_img div {
    position: absolute;
    top: 35%;
    left: 0;
    right: 0;
}

.business_img h2 {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 60vh;
}

.business_img h2 img {
    position: fixed;
    top: 10%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #fff;
    z-index: -10;
}

.business_img h3 {
    font-size: 150px;
}

.business_img h4 {
    font-size: 30px;
    border-top: 1px solid #fff;
    display: inline-block;
    padding-top: 30px;
}

.page_busi,
.hyou {
    width: 1024px;
    margin: 0 auto;
    text-align: center;
    padding: 90px 0 50px;
}

.page_busi h2,
.access h2 {
    font-size: 140px;
    font-weight: bold;
}

.page_busi h3,
.access h3 {
    font-size: 20px;
    font-weight: bold;
}

.charge {
    background-color: #eee;
    margin-top: 50px;
}

.charge h4,
.kizai_big h4 {
    font-weight: bold;
    font-size: 25px;
    padding: 30px 0;
    background-color: #ccc;
}

.busi_box {
    padding: 30px;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}

.futo {
    font-weight: bold;
}
.busi_l {
    font-size: 20px;
}
.busi_r {
    font-size: 35px;
    font-weight: bold;
}

.busi_r span {
    font-size: 15px;
}

.shirosen {
    border-top: 1px solid #fff;
}

.kizai_big {
    margin-top: 100px;
}

.kizai {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;

    margin-bottom: 30px;
}

.kizai_box {
    width: 32%;
    border: 1px solid #eee;
    margin-top: 20px;
    background-color: #eee;
    align-self: baseline;
}

.kizaiwake {
    border-top: 20px solid #fff;
    margin: 0 calc(0.5% - 0.5vw);
}
.kizai_p {
    width: 32%;
}

.kizai_p p {
    border: 1px solid #eee;
    margin-top: 20px;
    background-color: #eee;
}

.kizai_box img,
.tokusyu img {
    width: 100%;
}

.kizai_box span,
.kizai_p span {
    font-size: 15px;
    line-height: 1.8em;
    display: block;
}

.tokusyu {
    margin-top: 20px;
    border: 1px solid #eee;
    width: 100%;
}

.video_box {
    margin: 50px auto 0;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.video_box h4 {
    width: 100%;
    background-color: #eee;
    font-weight: bold;
    font-size: 25px;
    text-align: center;
    padding: 30px;
    margin: 0 auto 40px;
}
.yoko2 {
    text-align: left;
    width: 45%;
    margin-bottom: 40px;
}

.yoko2 div img {
    width: 100%;
}
.yoko2 p {
    font-size: 18px;
    color: #999;
    margin: 10px 0;
}

.yoko2 ul {
    overflow-wrap: break-word;
}

.aka {
    background-color: #de1b22;
    color: #fff;
    display: inline-block;
    padding: 0 10px;
    margin-top: 10px;
}

.kaisyalink {
    background-color: #eee;
    display: inline-block;
    padding: 0 10px;
    margin-top: 10px;
}
.big {
    font-size: 50px;
    text-align: center;
}
.syo {
    font-size: 15px;
}

.hyou span {
    font-size: 15px;
}

.hyou table {
    background-color: #eee;
    width: 100%;
    font-size: 18px;
}

.hyou tr {
    border-bottom: #fff 2px solid;
}

.hyou th,
.hyou td {
    padding: 30px;
}

.hyou th {
    width: 18%;
    font-weight: normal;
    vertical-align: middle;
    text-align: center;
}

.hyou td {
    text-align: left;
    font-weight: bold;
}

.access {
    width: 100%;
}

.access iframe {
    width: 100%;
    margin-top: 50px;
}

.yokonarabi {
    display: flex;
}

.yokonarabi li {
    margin: 0 10px;
}

.yokonarabi a.btn-border-shadow:before {
    border: 1px solid #000;
}

.rec_bun {
    text-align: left;
    margin-bottom: 30px;
}

.oubo_big {
    font-size: 25px;
    font-weight: bold;
    background: linear-gradient(transparent 75%, #ffadad 75%);
    display: inline-block;
    padding: 0 5px;
}

/**************************************************/
/* フッター */
/**************************************************/
footer {
    width: 100%;
    text-align: center;
    background: #111;
    margin: 0 auto;
}

#footer_box {
    width: 1200px;
    text-align: center;
    margin: 0 auto;
    padding: 120px 0 100px;
    color: #fff;
    display: flex;
    justify-content: space-between;
}

.footer_left {
    width: 70%;
    text-align: left;
}

.footer_left h2 {
    width: 30%;
    margin-bottom: 20px;
}

.footer_left h2 img {
    width: 100%;
}

.footer_left li {
    font-size: 15px;
}

.footer_right {
    width: 40%;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

.footer_right h2 {
    font-size: 25px;
    font-weight: bold;
}
.footer_right li {
    text-align: center;
    margin: 20px auto 0;
    width: 70%;
    border: 1px solid #fff;
    padding: 15px;
}

/*********************************/
/* コピーライト */
/*********************************/
.copy {
    text-align: center;
    padding: 20px 0;
    color: #fff;
    background: #000;
    font-size: 10px;
}
