@charset "utf-8";

/* ====================================================================
 基本設定
==================================================================== */

/* 基本
----------------------------------------------------------*/
html {
    overflow-y: scroll;
    font-size: 62.5%;
}
body {
    margin: 0;
    padding: 0;
    background: #ffffff;
    color: #000000;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
    -webkit-text-size-adjust: 100%;
}
@media print, screen and (max-width: 820px) {
    body {
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body, button, input, select, textarea {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}
ul {
    list-style: none;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
    line-height: 0;
}
input, select, textarea {
    font-size: 14px;
    font-size: 1.4rem;
    vertical-align: middle;
}

/* ----- 一般的なリンク ----- */
a,
a:visited {
    color: #000000;
    text-decoration: none;
    outline: none;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
a:hover,
a:active,
a:focus {
    text-decoration: underline;
    opacity: .7;
}

/*a:hover img,
a:active img,
a:focus img {
    opacity: .7;
}*/

/*ごめんいじった
.shimane{
    display:block;
    cursor: default;
}
.shimane img{
    transition:0.3s;
    display:block;
    width:100%;
}
.shimane:hover img{
    opacity:1;
}
*/



/* clearfixなど
----------------------------------------------------------*/
.clearfix:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
}
/**/
@media print, screen and (min-width: 821px) {
    .hide-pc {
        display: none !important;
    }
}
@media print, screen and (max-width: 820px) {
    .hide-sp {
        display: none !important;
    }
}



/* ====================================================================
 top & header
==================================================================== */

/* top
----------------------------------------------------------*/
#top {
    display: none;
}



/* header
----------------------------------------------------------*/
#header {
    padding: 12px 0;
    background: rgba(255, 255, 255, 0.95);
    border:2px solid;
    border-color: rgba(255, 255, 255, 0.95);
    line-height: 1;
}
#header.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    border-radius: 0px;
    
}
#header > .inner {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 10px;
}
#header > .inner .header-mainlogo {
    margin: 0 0 5px 2px;
    width: 22.88%;
}
#header > .inner .header-nav {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 48%;
}
#header > .inner .header-nav li {
    margin: 0 0 0 2px;
}
#header > .inner .header-nav li:first-of-type {
    margin-left: 0;
}
#header > .inner .header-nav li a {
    padding: 4px 6px;
    text-decoration: none;
    white-space: nowrap;
    -webkit-transition: none;
    transition: none;
}
#header > .inner .header-nav li a:hover {
    border-bottom: 2px solid #3C78B4;
    text-decoration: none;
}
#header > .inner .header-sns {
    display: -webkit-flex;
    display: flex;
}
#header > .inner .header-sns li {
    margin: 0 0 0 15px;
}
#header > .inner .header-sns li:first-of-type {
    margin-left: 20px;
}
#header > .inner .header-sns li a {
    display: block;
    width: 28px;
    height: 28px;
}
#header > .inner .header-entry {
    width: 13.4%;
}
#header > .inner .header-entry a {
    display: block;
    height: 47px;
    padding: 16px 2px 2px;
    border-radius: 6px;
    background: #fff500;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}
#header > .inner .header-nav-btn {
    display: none;
}
@media print, screen and (max-width: 960px) {
    #header > .inner .header-nav {
        font-size: 1.4rem;
    }
}
@media print, screen and (max-width: 820px) {
    #header {
        padding: 0;
    }
    #header.nav-on {
        background: #3C78B4;
    }
    #header > .inner {
        height: 50px;
        padding: 0;
    }
    #header > .inner .header-mainlogo {
        flex: 1;
        width: auto;
        padding: 0 20px;
    }
    #header > .inner .header-mainlogo img {
        max-height: 16px;
    }
    #header > .inner .header-nav {
        display: none;
    }
    #header > .inner .header-sns {
        display: none;
    }
    #header > .inner .header-entry {
        /*width: 28.125%;*/
        width: 21.125%;
        margin-right: 0;
    }
    #header > .inner .header-entry a {
        display: block;
        height: 50px;
        padding: 19px 2px 2px;
        border-radius: 0;
        font-size: 1.2rem;
        text-align: center;
    }
    #header.nav-on > .inner .header-entry a {
        background: #ffffff;
    }
    #header > .inner .header-nav-btn {
        display: block;
        overflow: hidden;
        width: 50px;
        height: 50px;
        margin: 0;
        background: url("../img/global-nav-btn-on.png") 50% 50% no-repeat;
        background-size: contain;
        text-indent: 100%;
        white-space: nowrap;
    }
    #header.nav-on > .inner .header-nav-btn {
        background: url("../img/global-nav-btn-off.png") 50% 50% no-repeat;
        background-size: contain;
    }
}



/* global-nav-sp
----------------------------------------------------------*/
#global-nav-sp {
    display: none;
    position: fixed;
    top: 54px;
    z-index: 10000;
    overflow: auto;
    width: 100%;
    height: calc(100% - 50px);
    padding: 0;
    border-top: 1px solid #ffffff;
    border-left: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    background: rgba(60, 120, 180, 0.9);
    -webkit-overflow-scrolling: touch;
}
#global-nav-sp .nav {
    font-size: 1.0rem;
}
#global-nav-sp .nav li {
    border-bottom: 1px solid #ffffff;
}
#global-nav-sp .nav li a {
    display: block;
    padding: 20px 10px;
}
#global-nav-sp .nav li a:hover {
    text-decoration: none;
}
#global-nav-sp .nav li a strong {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
}
#global-nav-sp .nav li a img {
    display: block;
    height: 18px;
    margin: 0 auto;
}
#global-nav-sp .nav li a img.qa {
    display: block;
    height: 21px;
    margin: 0 auto;
}
#global-nav-sp .sns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 25px 0 0;
}
#global-nav-sp .sns li {
    margin: 0 0 0 20px;
}
#global-nav-sp .sns li:first-of-type {
    margin-left: 0;
}
#global-nav-sp .sns li a {
    display: block;
    width: 30px;
    height: 30px;
}



/* ====================================================================
 contents
==================================================================== */

/* contents基本設定
----------------------------------------------------------*/
#contents {
    line-height: 2;
}
@media print, screen and (max-width: 820px) {
    #contents {
        line-height: 1.714;
    }
}



/* メインコンテンツ内での各タグの基本設定
----------------------------------------------------------*/
#contents h1 {}
#contents h2 {}
#contents h3 {}
#contents h4 {}
#contents h5 {}
#contents h6 {}
#contents p {
    margin: 0 0 1.0em;
}
#contents ul {}
#contents ol {}
#contents li {}
#contents dl {}
#contents dt {}
#contents dd {}

#contents strong {
    font-weight: bold;
}



/* タイトル
----------------------------------------------------------*/
/*
#contents .cmn-title01 {}
*/



/* カラー
----------------------------------------------------------*/
/*
#contents .cmn-color-blue01 {}
*/



/* ボタン
----------------------------------------------------------*/
#contents .cmn-btn01 {}



/* ラベル
----------------------------------------------------------*/
/*
#contents .cmn-label01 {}
*/



/* ボックス・ブロック・セクション
----------------------------------------------------------*/
/*
#contents .cmn-frame01 {}
#contents .cmn-block01 {}
#contents .cmn-box01 {}
*/



/* リスト
----------------------------------------------------------*/
/*
#contents .cmn-list01 {}
*/



/* ====================================================================
 footer
==================================================================== */
#footer {
    padding: 35px 0 30px;
    background: #ffffff;
    font-size: 1.4rem;
    line-height: 1.85;
}
#footer > .inner {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 20px;
}
#footer > .inner .col {}
#footer > .inner .col.main {
    margin: 0 10px 0 0;
}
#footer > .inner .col.main .footer-mainlogo-btn {
    margin: 0 0 10px;
}
#footer > .inner .col.main .footer-mainlogo-btn img {
    width: 136px;
}
#footer > .inner .col.main .footer-copy {
    white-space: nowrap;
}
#footer > .inner .col.sub {}
#footer > .inner .col.sub .footer-info {}
#footer > .inner .col.sub .footer-info span {
    display: inline-block;
}
#footer > .inner .col.sub .footer-copy-sp {
    display: none;
}
#footer .footer-pagetop {
    display: none;
    position: fixed;
    bottom: 6px;
    right: 6px;
}
#footer .footer-pagetop span {
    display: block;
    overflow: hidden;
    width: 56px;
    height: 59px;
    background: url("../img/footer-pagetop01.png") 0 0 no-repeat;
    background-size: contain;
    text-indent: 100%;
    white-space: nowrap;
    cursor: pointer;
}
#footer .footer-pagetop span:hover {
    opacity: .7;
}
@media print, screen and (max-width: 820px) {
    #footer {
        padding: 15px 0 20px;
        font-size: 1.0rem;
        line-height: 1.6;
    }
    #footer > .inner {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0 20px;
    }
    #footer > .inner .col {
        width: 100%;
    }
    #footer > .inner .col.main {
        margin: 0 0 10px;
    }
    #footer > .inner .col.main .footer-mainlogo-btn {
        margin: 0;
    }
    #footer > .inner .col.main .footer-mainlogo-btn img {
        width: 93px;
    }
    #footer > .inner .col.main .footer-copy {
        display: none;
    }
    #footer > .inner .col.sub .footer-info {
        margin: 0 0 10px;
    }
    #footer > .inner .col.sub .footer-copy-sp {
        display: block;
    }
}



/* ====================================================================
 ページごとの設定
==================================================================== */

/* トップページ
----------------------------------------------------------*/
body.home #contents {
    background: url("../../img/home-bg01.png") 50% calc(100vh - 71px);
}
@media print, screen and (max-width: 820px) {
    body.home #contents {
        background: url("../../img/home-bg01.png") 50% calc(100vh - 50px);
        background-size: 900px auto;
    }
}

/**/
body.home #contents #maintitle {
    position: relative;
    width: 100%;
    height: auto;
    min-height: calc(100vh - 71px);
    margin: 0 0 40px;
    background: url("../../img/top-2.jpg") 50% 50% no-repeat;
    background-size: cover;
}
body.home #contents #maintitle > .inner {
    max-width: 1060px;
    margin: 0 auto;
    padding: 75px 10px 0;
}
body.home #contents #maintitle > .inner h1 {
    overflow: hidden;
    height: 230px; /*179px*/
    margin: -60px 0px 40px 30px;
    background: url("../../img/maintitle-title01.png") 50% 0 no-repeat;
    background-size: contain;
    text-indent: 100%;
    white-space: nowrap;
}
body.home #contents #maintitle > .inner h2 {
    margin: 0 0 40px;
    text-align: center;
}
body.home #contents #maintitle > .inner h2 img {
    width: 346px;
}
body.home #contents #maintitle > .inner .info {
    text-align: center;
}
body.home #contents #maintitle > .inner .info img {
    width: 408px;
}
body.home #contents #maintitle > .inner .badge {
    position: absolute;
    left: calc(50% + 204px);
    top: 215px;
}
body.home #contents #maintitle > .inner .badge img {
    width: 128px;
}
body.home #contents #maintitle > .inner .btn {
    position: absolute;
    left: 50%;
    bottom: 45px;
    -webkit-animation: headerScrollBtn .5s ease infinite alternate;
    animation: headerScrollBtn .5s ease infinite alternate;
}
@keyframes headerScrollBtn {
    0% {
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
    100% {
        -webkit-transform: translate(-50%, -6px);
        transform: translate(-50%, -6px);
    }
}
body.home #contents #maintitle > .inner .btn a {
    display: block;
    overflow: hidden;
    width: 49px;
    height: 34px;
    background: url("../../img/home-maintitle-scroll-btn01.png") 50% 0 no-repeat;
    background-size: contain;
    text-indent: 100%;
    white-space: nowrap;
}
@media print, screen and (max-width: 820px) {
    body.home #contents #maintitle {
        height: auto;
        max-width: 100%;
        min-height: calc(100vh - 100px); /* TODO:要確認 */
        margin: 0 0 25px;
        background: url("../../img/top-sp-2.jpg") 50% 100% no-repeat; /* 下端を固定 */
        background-size: cover;
    }
    body.home #contents #maintitle > .inner {
        padding: 35px 10px 0;
    }
    body.home #contents #maintitle > .inner h1 {
        height: 157px;
        margin: 0 0 40px;
        background: url("../../img/maintitle-title01-sp.png") 50% 0 no-repeat;
        background-size: contain;
    }
    body.home #contents #maintitle > .inner h2 {
        margin: 0 0 15px;
    }
    body.home #contents #maintitle > .inner h2 img {
        width: 196px;
    }
    body.home #contents #maintitle > .inner .info img {
        width: 241px;
    }
    body.home #contents #maintitle > .inner .badge {
        left: calc(50% + 78px);
        top: 142px;
    }
    body.home #contents #maintitle > .inner .badge img {
        width: 74px;
    }
}

/**/
body.home #contents #intro {
    margin: 0 0 10px;
}
body.home #contents #intro > .inner {
    max-width: 1368px;
    margin: 0 auto;
    padding: 10px 10px 80px;
    background: url("../../img/home-intro-bg01-01.png") 0 50px no-repeat, url("../../img/home-intro-bg01-02.png") 100% 100% no-repeat;
    background-size: auto, auto;
}
body.home #contents #intro > .inner h2 {
    margin: 0 0 25px;
    text-align: center;
}
body.home #contents #intro > .inner h2 img {
    height: 33px;
}
body.home #contents #intro > .inner .text {
    margin: 0 0 25px;
    text-align: center;
    line-height: 3;
}
body.home #contents #intro > .inner .btn {
    text-align: center;
}
body.home #contents #intro > .inner .btn a {
    display: inline-block;
    width: 366px;
    height: 116px;
    padding: 52px 20px 0 0;
    background: url("../img/cmn-btn01-blue01.png") 50% 0 no-repeat;
    background-size: contain;
    color: #ffffff;
    font-weight: bold;
    text-decoration: none;
    line-height: 1;
}
@media print, screen and (max-width: 820px) {
    body.home #contents #intro {
        margin: 0 0 30px;
    }
    body.home #contents #intro > .inner {
        margin: 0 auto;
        padding: 0 20px 40vw;
        background: url("../../img/home-intro-bg01-sp.png") 50% 100% no-repeat;
        background-size: contain;
    }
    body.home #contents #intro > .inner h2 img {
        height: 21px;
    }
    body.home #contents #intro > .inner .text {
        margin: 0 0 10px;
        text-align: left;
        line-height: 1.714;
    }
    body.home #contents #intro > .inner .btn a {
        width: 257px;
        height: 86px;
        padding: 37px 10px 0 0;
        font-size: 1.4rem;
    }
}

/**/
body.home #contents #overview {
    margin: 0 0 100px;
}
body.home #contents #overview > .inner {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 20px;
}
body.home #contents #overview > .inner h2 {
    margin: 0 0 40px;
}
body.home #contents #overview > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
}
body.home #contents #overview > .inner h2 img {
    display: block;
    width: 325px;
    margin: 0 auto;
}
body.home #contents #overview > .inner dl {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 12px 10px 10px;
    border-bottom: 1px solid #000000;
}
body.home #contents #overview > .inner dl:first-of-type {
    border-top: 1px solid #000000;
}
body.home #contents #overview > .inner dl dt {
    width: 13em;
    margin: 0 10px 0 0;
    font-weight: bold;
}
body.home #contents #overview > .inner dl dd {
    width: 390px;
    word-break: break-all;
}
body.home #contents #overview > .inner dl .small1{
    font-size: 1.2rem;
    padding-left: 3em;
    text-indent: -1em;
}
body.home #contents #overview > .inner dl .small2{
    font-size: 1.2rem;
}
body.home #contents #overview > .inner .btn {
    text-align: center;
}
body.home #contents #overview > .inner .btn a {
    display: inline-block;
    width: 360px;
    padding: 6px 38px 6px ;
    border: 1px solid #000000;
    border-radius: 6px;
    background: url("../img/icon-arrow-right01-black01.png") calc(100% - 10px) 50% no-repeat;
    background-size: 19px auto;
    font-weight: bold;
}
body.home #contents #overview > .inner .btn a:hover {
    text-decoration: none;
}
@media print, screen and (max-width: 820px) {
    body.home #contents #overview {
        margin: 0 0 50px;
    }
    body.home #contents #overview > .inner {
        padding: 0 20px;
    }
    body.home #contents #overview > .inner h2 {
        margin: 0 0 25px;
    }
    body.home #contents #overview > .inner h2 img {
        width: 195px;
    }
    body.home #contents #overview > .inner dl {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px 0 9px;
    }
    body.home #contents #overview > .inner dl dt {
        width: 100%;
        margin: 0;
        font-size: 1.2rem;
        text-align: center;
    }
    body.home #contents #overview > .inner dl dd {
        width: 100%;
        text-align: center;
    }
    body.home #contents #overview > .inner .btn a {
        width: 230px;
        padding: 6px 28px 6px 26px;
        background-size: 14px auto;
    }
}

/**/
body.home #contents #program {}
body.home #contents #program > .inner {
    max-width: 1360px;
    padding: 0 10px;
    margin: 0 auto;
}
body.home #contents #program > .inner h2 {}
body.home #contents #program > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
}
body.home #contents #program > .inner h2 img {
    display: block;
    width: 300px;
    margin: 0 auto;
}
body.home #contents #program > .inner .program-box01 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 0 40px;
}
body.home #contents #program > .inner .program-box01 h3 {
    margin: 0 0 25px;
    text-align: center;
}
body.home #contents #program > .inner .program-box01 h3 img {
    height: 54px;
}
body.home #contents #program > .inner .box01 {}
body.home #contents #program > .inner .box01 .col {}
body.home #contents #program > .inner .box01 .col.img {
    width: 42.836%;
}
body.home #contents #program > .inner .box01 .col.text {
    width: 55.672%;
    padding: 80px 10.896% 0 0;
}
body.home #contents #program > .inner .box02 {}
body.home #contents #program > .inner .box02 .col {}
body.home #contents #program > .inner .box02 .col.img {
    order: 9999;
    width: 42.836%;
}
body.home #contents #program > .inner .box02 .col.text {
    width: 55.672%;
    padding: 45px 0 0 10.896%;
}
body.home #contents #program > .inner .box03 {
    margin-top: -40px;
}
body.home #contents #program > .inner .box03 .col {}
body.home #contents #program > .inner .box03 .col.img {
    width: 42.836%;
}
body.home #contents #program > .inner .box03 .col.text {
    width: 55.672%;
    padding: 55px 10.896% 0 0;
}
@media print, screen and (max-width: 1200px) {
    body.home #contents #program > .inner .box01 .col.text {
        padding: 65px 10px 0 0;
    }
    body.home #contents #program > .inner .box02 .col.text {
        padding: 30px 0 0 10px;
    }
    body.home #contents #program > .inner .box03 .col.text {
        padding: 40px 10px 0 0;
    }
}
@media print, screen and (max-width: 820px) {
    body.home #contents #program {}
    body.home #contents #program > .inner {
        padding: 0 20px;
    }
    body.home #contents #program > .inner h2 {}
    body.home #contents #program > .inner h2 em {
        margin: 0 auto 5px;
    }
    body.home #contents #program > .inner h2 img {
        width: 180px;
    }
    body.home #contents #program > .inner .program-box01 {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 10px;
    }
    body.home #contents #program > .inner .program-box01 h3 {
        margin: 0 0 15px;
    }
    body.home #contents #program > .inner .program-box01 h3 img {
        height: 32px;
    }
    body.home #contents #program > .inner .box01 {}
    body.home #contents #program > .inner .box01 .col {}
    body.home #contents #program > .inner .box01 .col.img {
        width: calc(100% + 25px);
        margin: -15px -15px -15px -10px;
    }
    body.home #contents #program > .inner .box01 .col.img img {
        width: 100%;
    }
    body.home #contents #program > .inner .box01 .col.text {
        width: 100%;
        padding: 0;
    }
    body.home #contents #program > .inner .box02 {}
    body.home #contents #program > .inner .box02 .col {}
    body.home #contents #program > .inner .box02 .col.img {
        order: 0;
        width: calc(100% + 20px);
        margin: 0 -10px;
    }
    body.home #contents #program > .inner .box02 .col.img img {
        width: 100%;
    }
    body.home #contents #program > .inner .box02 .col.text {
        width: 100%;
        padding: 0;
    }
    body.home #contents #program > .inner .box03 {
        margin-top: 0;
    }
    body.home #contents #program > .inner .box03 .col {}
    body.home #contents #program > .inner .box03 .col.img {
        width: calc(100% + 20px);
        margin: 0 -10px;
    }
    body.home #contents #program > .inner .box03 .col.img img {
        width: 100%;
    }
    body.home #contents #program > .inner .box03 .col.text {
        width: 100%;
        padding: 0;
    }
}

/**/
body.home #contents #speaker {
    margin: 0 0 40px;
}
body.home #contents #speaker > .inner {
    max-width: 1580px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 10px;
}
body.home #contents #speaker > .inner h2 {
    margin: 0 0 40px;
}
body.home #contents #speaker > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
    font-style: normal;
}
body.home #contents #speaker > .inner h2 img {
    display: block;
    width: 293px;
    margin: 0 auto;
}

body.home #contents #speaker > .inner .speaker-frame01 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 0 65px;
}
body.home #contents #speaker > .inner .speaker-frame01 .col {}
body.home #contents #speaker > .inner .speaker-frame01 .col.main {
    width: 45.256%;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main.last {
    order: 9999;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure {}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure > img {
    display: block;
    margin: 0 0 5px;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption {
    width: 65.938%;
    margin: 0 0 0 auto;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main.last figure figcaption {
    width: 65.938%;
    margin: 0 auto 0 0;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .title {
    margin: 0;
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .title strong {
    margin: 0 2px 0 0;
    font-size: 3.2rem;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .ruby {
    margin: 0 0 15px;
    text-align: center;
    line-height: 1.4;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .ruby img {
    height: 39px;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .detail {
    margin: 0;
    font-weight: bold;
    text-align: center;
    line-height: 1.65;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.sub {
    width: 53.59%;
    padding: 0 16.923% 0 0;
}
body.home #contents #speaker > .inner .speaker-frame01 .col.sub.first {
    padding: 0 0 0 16.923%;
}

body.home #contents #speaker > .inner .speaker-frame01 .lead {
    font-size: 2.0rem;
    color: #005aa0;
    font-weight: bold;
    line-height: 1.6;
}

body.home #contents #speaker > .inner .speaker-biography {
    position: relative;
    margin: 50px 0 0;
    font-size: 1.4rem;
    line-height: 1.714;
}
body.home #contents #speaker > .inner .speaker-biography:after {
    position: absolute;
    right: -36px;
    bottom: -30px;
    width: 101px;
    height: 102px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
}
body.home #contents #speaker > .inner .speaker-biography.deco01:after {
    background-image: url("../../img/home-speaker-deco01-01.png");
}
body.home #contents #speaker > .inner .speaker-biography.deco02:after {
    background-image: url("../../img/home-speaker-deco01-02.png");
}
body.home #contents #speaker > .inner .speaker-biography.deco03:after {
    background-image: url("../../img/home-speaker-deco01-03.png");
}
body.home #contents #speaker > .inner .speaker-biography dl {
    display: -webkit-flex;
    display: flex;
    margin: 0;
    padding: 8px 0 7px;
    border-bottom: 1px solid #c8c8c8;
}
body.home #contents #speaker > .inner .speaker-biography dl:first-of-type {
    border-top: 1px solid #c8c8c8;
}
body.home #contents #speaker > .inner .speaker-biography dl dt {
    width: 6em;
    padding: 0 1em 0 0;
}
body.home #contents #speaker > .inner .speaker-biography dl dd {
    -webkit-flex: 1 1 1px;
    flex: 1 1 1px;
}
@media print, screen and (max-width: 1200px) {
    body.home #contents #speaker > .inner .speaker-frame01 .col.sub {
        padding: 0 10px 0 0;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.sub.first {
        padding: 0 0 0 10px;
    }
}
@media print, screen and (max-width: 820px) {
    body.home #contents #speaker {}
    body.home #contents #speaker > .inner {
        padding: 0 20px;
    }
    body.home #contents #speaker > .inner h2 {
        margin: 0 0 10px;
    }
    body.home #contents #speaker > .inner h2 em {
        margin: 0 auto 5px;
    }
    body.home #contents #speaker > .inner h2 img {
        width: 176px;
    }
    body.home #contents #speaker > .inner .speaker-frame01 {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 20px;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col {}
    body.home #contents #speaker > .inner .speaker-frame01 .col.main {
        width: calc(100% + 40px);
        margin: 0 -20px 20px;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main.last {
        order: 0;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure {}
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure > img {
        width: 100%;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption {
        width: 100%;
        margin: 0;
        padding: 0 20px;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main.last figure figcaption {
        width: 100%;
        margin: 0;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .title {
        margin: 0;
        font-size: 1.0rem;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .title strong {
        font-size: 1.8rem;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .ruby {
        margin: 0 0 5px;
        font-size: 0.8rem;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .ruby img {
        height: 24px;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.main figure figcaption .detail {
        margin: 0;
        font-size: 1.2rem;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.sub {
        width: 100%;
        padding: 0;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .col.sub.first {
        padding: 0;
    }
    body.home #contents #speaker > .inner .speaker-frame01 .lead {
        font-size: 1.6rem;
    }
    body.home #contents #speaker > .inner .speaker-biography {
        margin: 20px 0 0;
        font-size: 1.4rem;
        line-height: 1.357;
    }
    body.home #contents #speaker > .inner .speaker-biography:after {
        right: -6px;
        bottom: -18px;
        width: 50px;
        height: 51px;
    }
    body.home #contents #speaker > .inner .speaker-biography dl {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0;
        padding: 12px 0 11px;
    }
    body.home #contents #speaker > .inner .speaker-biography dl dt {
        width: 100%;
        padding: 0;
        font-size: 1.2rem;
        text-align: center;
    }
    body.home #contents #speaker > .inner .speaker-biography dl dd {
        width: 100%;
        text-align: center;
    }
}

/**/
body.home #contents #staff {
    margin: 0 0 40px;
}
body.home #contents #staff > .inner {
    max-width: 1580px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 10px;
}
body.home #contents #staff > .inner h2 {
    margin: 0 0 40px;
}
body.home #contents #staff > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
    font-style: normal;
}

body.home #contents #staff > .inner h2 img {
    display: block;
    width: 190px;
    margin: 0 auto 20px;
}

body.home #contents #staff > .inner .staff-box{
    width: 350px; 
	height: 420px; 
	background: rgba(255, 255, 255, 0.95);
	margin-bottom: 50px;
    border: 2px solid;
    border-color: rgba(88, 151, 209, 0.95);
    border-radius: 20px;
    box-shadow: 10px 10px 10px rgba(48, 73, 91, 0.5);
}
body.home #contents #staff > .inner  .staff-box h1 {
    width: 28%;
    float: right;
    margin: 28px 24px 0px 0px;
}
body.home #contents #staff > .inner  .staff-box h1 img{
    border-radius: 10px;
}
body.home #contents #staff > .inner  .staff-box h3 {
    padding: 20px 0 10px 25px;
    color: #333;
    font-size: 24px;
}
body.home #contents #staff > .inner  .staff-box h5 {
    color: #000000;
    font-size: 14px;
    margin-left: 27px;
    margin-bottom: 17px;
}
body.home #contents #staff > .inner  .staff-box p {
    text-indent: 1em;
    font-size: 14px;
    margin: 0 20px;
}
@media print, screen and (max-width: 1300px) {
    body.home #contents #staff > .inner  {
        opacity: 1;
        padding: 10px;
        visibility: visible;
    }
}
@media print, screen and (max-width: 892px) {
    body.home #contents #staff > .inner  {
        opacity: 1;
        padding: 10px;
        visibility: visible;
    }
}

@media print, screen and (max-width: 820px) {
    body.home #contents #staff > .inner  .staff-box{
        width: 300px;
	    height: 450px;
    }
}
@media print, screen and (max-width: 500px) {
    body.home #contents #staff > .inner  .staff-box{
        width: 290px;
	    height: 450px;

    }
    body.home #contents #staff > .inner .staff-box h1 {
        width: 30%;
        float: right;
        margin: 28px 24px 0px 0px;
    }
    body.home #contents #staff > .inner .staff-box h3 {
        padding: 32px 0 10px 25px;
        color: #333;
        font-size: 20px;
    }
    body.home #contents #staff > .inner .staff-box h5 {
        color: #000000;
        font-size: 14px;
        margin-top: 10px;
        margin-left: 27px;
        margin-bottom: 17px;
    }
    body.home #contents #staff > .inner .staff-box p {
        text-indent: 1em;
        margin: 0 20px;
    }
}

/**/
body.home #contents #links {
    margin: 0 0 40px;
}
body.home #contents #links > .inner {
    max-width: 1368px;
    margin: 0 auto;
    padding: 10px 10px 80px;
    overflow: hidden;
}
body.home #contents #links > .inner h2 {
    margin: 0 0 40px;
}
body.home #contents #links > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
    font-style: normal;
}
body.home #contents #links > .inner h2 img {
    display: block;
    width: 188px;
    margin: 0 auto;
}
body.home #contents #links > .inner #right{
    float: right;
    margin:auto;
    padding: 25px 15% 0 0;
}
body.home #contents #links > .inner #left{
    float: left;
    margin:auto;
    padding: 50px 0 0 20%;
}
body.home #contents #links > .inner .btn a {
    display: inline-block;
    width: 366px;
    height: 116px;
    padding: 52px 20px 0 50px;
    background: url("../img/cmn-btn01-blue01.png") 50% 0 no-repeat;
    background-size: contain;
    color: #ffffff;
    font-weight: bold;
    text-decoration: none;
    line-height: 1;
}
body.home #contents #links > .inner .btn .yellow {
    display: inline-block;
    width: 366px;
    height: 116px;
    padding: 52px 20px 0 50px;
    background: url("../img/cmn-btn01-yellow01.png") 50% 0 no-repeat;
    background-size: contain;
    color: #000000;
    font-weight: bold;
    text-decoration: none;
    line-height: 1;
}
body.home #contents #links > .inner #right ul {
    display: flex;
    list-style: none;
}
body.home #contents #links > .inner #right li {
    float: left;
    margin: 25px auto 50px;
}
body.home #contents #links > .inner #right li a {
    display: block;
    width: 75px;
    height: 75px;
}

@media print, screen and (max-width: 1200px) {
   
}
@media print, screen and (max-width: 820px) {
    body.home #contents #links {}
    body.home #contents #links > .inner {
        padding: 0 20px;
    }
    body.home #contents #links > .inner h2 {
        margin: 0 0 10px;
    }
    body.home #contents #links > .inner h2 em {
        margin: 0 auto 5px;
    }
    body.home #contents #links > .inner h2 img {
        width: 113px;
    }
    body.home #contents #links > .inner p{
        margin:auto;
    }
    body.home #contents #links > .inner #right{
        float: none;
        padding: 25px 0 0 0;
        margin: 0 auto;
    }
    body.home #contents #links > .inner #left{
        float: none;
        padding: auto;
        margin: 0 auto;
    }
    body.home #contents #links > .inner #right .btn{
        text-align: center;
    }
    body.home #contents #links > .inner .btn a {
        width: 340px;
        height: 100px;
        padding: 45px 20px 0 0;
    }
    body.home #contents #links > .inner .btn .yellow {
        width: 340px;
        height: 100px;
        padding: 45px 20px 0 0;
    }
    body.home #contents #links > .inner #left{
        float: none;
        padding: 0;
    }
    body.home #contents #links > .inner #left .twitter-timeline{
        margin-left: auto;
        margin-right: auto;
        display: block !important;
    }
    body.home #contents #links > .inner #right ul {
        display: flex;
        list-style: none;
    }
    body.home #contents #links > .inner #right li {
        margin: 50px auto 75px;
    }
}

/**/
body.home #contents #qa {
    padding: 80px 0 570px;
    background: #000813 url("../../img/home-qa-bg01.jpg") 50% 100% no-repeat;
    background-size: cover;
    color: #ffffff;
}
body.home #contents #qa a {
    color: #ffffff;
}
body.home #contents #qa > .inner {
    max-width: 1080px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 20px;
}
body.home #contents #qa > .inner h2 {
    margin: 0 0 40px;
}
body.home #contents #qa > .inner h2 em {
    display: block;
    margin: 0 auto 5px;
    text-align: center;
    font-style: normal;
}
body.home #contents #qa > .inner h2 img {
    display: block;
    width: 116px;
    margin: 0 auto;
}
body.home #contents #qa > .inner .qa-frame01 {
    position: relative;
    max-width: 824px;
    margin: 0 auto 60px;
}
body.home #contents #qa > .inner .qa-frame01 dl {
    position: relative;
    padding: 35px 20px 33px 30px;
    border-bottom: 1px solid #ffffff;
}
body.home #contents #qa > .inner .qa-frame01 dl:first-of-type {
    border-top: 1px solid #ffffff;
}
body.home #contents #qa > .inner .qa-frame01 dl:first-of-type:before,
body.home #contents #qa > .inner .qa-frame01 dl:last-of-type:before {
    position: absolute;
    width: 103px;
    height: 102px;
    background: url("../../img/home-qa-deco01.png") 50% 50% no-repeat;
    background-size: contain;
    content: "";
}
body.home #contents #qa > .inner .qa-frame01 dl:first-of-type:before {
    right: -70px;
    top: -70px;
}
body.home #contents #qa > .inner .qa-frame01 dl:last-of-type:before {
    left: -58px;
    bottom: -36px;
}
body.home #contents #qa > .inner .qa-frame01 dl dt {
    position: relative;
    margin: 0 0 5px;
    padding: 0 0 0 30px;
    font-size: 1.8rem;
    line-height: 1.56;
}
body.home #contents #qa > .inner .qa-frame01 dl dt:before {
    position: absolute;
    left: 0;
    top: 0.3em;
    width: 18px;
    height: 17px;
    background: url("../img/qa-title-q01.png") 0 0 no-repeat;
    background-size: contain;
    content: "";
}
body.home #contents #qa > .inner .qa-frame01 dl dd {
    position: relative;
    padding: 0 0 0 30px;
}
body.home #contents #qa > .inner .qa-frame01 dl dd:before {
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 18px;
    height: 17px;
    background: url("../img/qa-title-a01.png") 0 0 no-repeat;
    background-size: contain;
    content: "";
}
body.home #contents #qa > .inner .lead {
    margin: 135px 0 10px;
    font-size: 2.6rem;
    font-weight: bold;
    text-align: center;
}
body.home #contents #qa > .inner .btn {
    text-align: center;
}
body.home #contents #qa > .inner .btn a {
    display: inline-block;
    width: 374px;
    height: 144px;
    padding: 43px 10px 0 0;
    background: url("../img/cmn-btn01-yellow01.png") 50% 0 no-repeat;
    background-size: contain;
    color: #000000;
    font-size: 2.0rem;
    font-weight: bold;
    text-decoration: none;
}
@media print, screen and (max-width: 820px) {
    body.home #contents #qa {
        padding: 25px 0 112vw;
        background: #000813 url("../../img/home-qa-bg01-sp.jpg") 50% 100% no-repeat;
        background-size: cover;
    }
    body.home #contents #qa > .inner {
        padding: 0 20px;
    }
    body.home #contents #qa > .inner h2 {
        margin: 0 0 20px;
    }
    body.home #contents #qa > .inner h2 em {
        display: block;
        margin: 0 auto 5px;
        text-align: center;
        font-style: normal;
    }
    body.home #contents #qa > .inner h2 img {
        display: block;
        width: 116px;
        margin: 0 auto;
    }
    body.home #contents #qa > .inner .qa-frame01 {
        margin: 0 0 30px;
    }
    body.home #contents #qa > .inner .qa-frame01 dl {
        margin: 0;
        padding: 20px 0;
    }
    body.home #contents #qa > .inner .qa-frame01 dl:first-of-type:before,
    body.home #contents #qa > .inner .qa-frame01 dl:last-of-type:before {
        width: 51px;
        height: 51px;
    }
    body.home #contents #qa > .inner .qa-frame01 dl:first-of-type:before {
        right: -19px;
        top: -30px;
    }
    body.home #contents #qa > .inner .qa-frame01 dl:last-of-type:before {
        left: 56%;
        bottom: -19px;
    }
    body.home #contents #qa > .inner .qa-frame01 dl dt {
        margin: 0 0 5px;
        padding: 0 0 0 20px;
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1.714;
    }
    body.home #contents #qa > .inner .qa-frame01 dl dt:before {
        top: 0.4em;
        width: 14px;
        height: 12px;
    }
    body.home #contents #qa > .inner .qa-frame01 dl dd {
        padding: 0 0 0 20px;
        line-height: 1.714;
    }
    body.home #contents #qa > .inner .qa-frame01 dl dd:before {
        top: 0.4em;
        width: 14px;
        height: 12px;
    }
    body.home #contents #qa > .inner .lead {
        margin: 50px 0 5px;
        font-size: 2rem;
    }
    body.home #contents #qa > .inner .btn {}
    body.home #contents #qa > .inner .btn a {
        display: inline-block;
        width: 260px;
        height: 94px;
        padding: 37px 10px 0 0;
        background: url("../img/cmn-btn02-yellow01.png") 50% 0 no-repeat;
        background-size: contain;
        font-size: 1.4rem;
    }
}



/* ====================================================================
 汎用クラス
==================================================================== */

/* レイアウト関連
--------------------------------------------------------- */
.d-b { display: block !important; }
.d-ib { display: inline-block !important; }
.d-i { display: inline !important; }
.fl-l { float: left !important; }
.fl-r { float: right !important; }
.cl { clear: both !important; }
.cl-l { clear: left !important; }
.cl-r { clear: right !important; }
@media print, screen and (min-width: 821px) {
    .d-b-pc { display: block !important; }
    .d-ib-pc { display: inline-block !important; }
    .d-i-pc { display: inline !important; }
    .fl-l-pc { float: left !important; }
    .fl-r-pc { float: right !important; }
    .cl-pc { clear: both !important; }
    .cl-l-pc { clear: left !important; }
    .cl-r-pc { clear: right !important; }
}
@media print, screen and (max-width: 820px) {
    .d-b-sp { display: block !important; }
    .d-ib-sp { display: inline-block !important; }
    .d-i-sp { display: inline !important; }
    .fl-l-sp { float: left !important; }
    .fl-r-sp { float: right !important; }
    .cl-sp { clear: both !important; }
    .cl-l-sp { clear: left !important; }
    .cl-r-sp { clear: right !important; }
}

.d-t { display:table; width:100%; }
.d-tf { display:table;  width:100%; table-layout: fixed;}
.d-tc { display:table-cell; }
.d-tr { display:table-row; width:100%; }

@media print, screen and (min-width: 821px) {
    .d-t-pc { display:table; width:100%; }
    .d-tf-pc { display:table; width:100%; table-layout: fixed;}
    .d-tc-pc { display:table-cell; }
    .d-tr-pc { display:table-row; width:100%;}
}



/* 幅・高さ
--------------------------------------------------------- */
.w-0 { width: 0 !important; }
.w-5 { width: 5% !important; }
.w-10 { width: 10% !important; }
.w-15 { width: 15% !important; }
.w-20 { width: 20% !important; }
.w-25 { width: 25% !important; }
.w-30 { width: 30% !important; }
.w-35 { width: 35% !important; }
.w-40 { width: 40% !important; }
.w-45 { width: 45% !important; }
.w-50 { width: 50% !important; }
.w-55 { width: 55% !important; }
.w-60 { width: 60% !important; }
.w-65 { width: 65% !important; }
.w-70 { width: 70% !important; }
.w-75 { width: 75% !important; }
.w-80 { width: 80% !important; }
.w-85 { width: 85% !important; }
.w-90 { width: 90% !important; }
.w-95 { width: 95% !important; }
.w-100 { width: 100% !important; }
@media print, screen and (min-width: 821px) {
    .w-0-pc { width: 0 !important; }
    .w-5-pc { width: 5% !important; }
    .w-10-pc { width: 10% !important; }
    .w-15-pc { width: 15% !important; }
    .w-20-pc { width: 20% !important; }
    .w-25-pc { width: 25% !important; }
    .w-30-pc { width: 30% !important; }
    .w-35-pc { width: 35% !important; }
    .w-40-pc { width: 40% !important; }
    .w-45-pc { width: 45% !important; }
    .w-50-pc { width: 50% !important; }
    .w-55-pc { width: 55% !important; }
    .w-60-pc { width: 60% !important; }
    .w-65-pc { width: 65% !important; }
    .w-70-pc { width: 70% !important; }
    .w-75-pc { width: 75% !important; }
    .w-80-pc { width: 80% !important; }
    .w-85-pc { width: 85% !important; }
    .w-90-pc { width: 90% !important; }
    .w-95-pc { width: 95% !important; }
    .w-100-pc { width: 100% !important; }
}
@media print, screen and (max-width: 820px) {
    .w-0-sp { width: 0 !important; }
    .w-5-sp { width: 5% !important; }
    .w-10-sp { width: 10% !important; }
    .w-15-sp { width: 15% !important; }
    .w-20-sp { width: 20% !important; }
    .w-25-sp { width: 25% !important; }
    .w-30-sp { width: 30% !important; }
    .w-35-sp { width: 35% !important; }
    .w-40-sp { width: 40% !important; }
    .w-45-sp { width: 45% !important; }
    .w-50-sp { width: 50% !important; }
    .w-55-sp { width: 55% !important; }
    .w-60-sp { width: 60% !important; }
    .w-65-sp { width: 65% !important; }
    .w-70-sp { width: 70% !important; }
    .w-75-sp { width: 75% !important; }
    .w-80-sp { width: 80% !important; }
    .w-85-sp { width: 85% !important; }
    .w-90-sp { width: 90% !important; }
    .w-95-sp { width: 95% !important; }
    .w-100-sp { width: 100% !important; }
}



/* マージン
--------------------------------------------------------- */
.m-0 { margin: 0 !important; }
.m-auto{ margin: auto !important; }
.m-t-50 { margin-top: -50px !important; }
.m-t-45 { margin-top: -45px !important; }
.m-t-40 { margin-top: -40px !important; }
.m-t-35 { margin-top: -35px !important; }
.m-t-30 { margin-top: -30px !important; }
.m-t-25 { margin-top: -25px !important; }
.m-t-20 { margin-top: -20px !important; }
.m-t-15 { margin-top: -15px !important; }
.m-t-10 { margin-top: -10px !important; }
.m-t-5 { margin-top: -5px !important; }
.m-t0 { margin-top: 0 !important; }
.m-t5 { margin-top: 5px !important; }
.m-t10 { margin-top: 10px !important; }
.m-t15 { margin-top: 15px !important; }
.m-t20 { margin-top: 20px !important; }
.m-t25 { margin-top: 25px !important; }
.m-t30 { margin-top: 30px !important; }
.m-t35 { margin-top: 35px !important; }
.m-t40 { margin-top: 40px !important; }
.m-t45 { margin-top: 45px !important; }
.m-t50 { margin-top: 50px !important; }
.m-t55 { margin-top: 55px !important; }
.m-t60 { margin-top: 60px !important; }
.m-t65 { margin-top: 65px !important; }
.m-t70 { margin-top: 70px !important; }
.m-t75 { margin-top: 75px !important; }
.m-t80 { margin-top: 80px !important; }
.m-t85 { margin-top: 85px !important; }
.m-t90 { margin-top: 90px !important; }
.m-t95 { margin-top: 95px !important; }
.m-t100 { margin-top: 100px !important; }
.m-r-50 { margin-right: -50px !important; }
.m-r-45 { margin-right: -45px !important; }
.m-r-40 { margin-right: -40px !important; }
.m-r-35 { margin-right: -35px !important; }
.m-r-30 { margin-right: -30px !important; }
.m-r-25 { margin-right: -25px !important; }
.m-r-20 { margin-right: -20px !important; }
.m-r-15 { margin-right: -15px !important; }
.m-r-10 { margin-right: -10px !important; }
.m-r-5 { margin-right: -5px !important; }
.m-r0 { margin-right: 0 !important; }
.m-r5 { margin-right: 5px !important; }
.m-r10 { margin-right: 10px !important; }
.m-r15 { margin-right: 15px !important; }
.m-r20 { margin-right: 20px !important; }
.m-r25 { margin-right: 25px !important; }
.m-r30 { margin-right: 30px !important; }
.m-r35 { margin-right: 35px !important; }
.m-r40 { margin-right: 40px !important; }
.m-r45 { margin-right: 45px !important; }
.m-r50 { margin-right: 50px !important; }
.m-r55 { margin-right: 55px !important; }
.m-r60 { margin-right: 60px !important; }
.m-r65 { margin-right: 65px !important; }
.m-r70 { margin-right: 70px !important; }
.m-r75 { margin-right: 75px !important; }
.m-r80 { margin-right: 80px !important; }
.m-r85 { margin-right: 85px !important; }
.m-r90 { margin-right: 90px !important; }
.m-r95 { margin-right: 95px !important; }
.m-r100 { margin-right: 100px !important; }
.m-b-50 { margin-bottom: -50px !important; }
.m-b-45 { margin-bottom: -45px !important; }
.m-b-40 { margin-bottom: -40px !important; }
.m-b-35 { margin-bottom: -35px !important; }
.m-b-30 { margin-bottom: -30px !important; }
.m-b-25 { margin-bottom: -25px !important; }
.m-b-20 { margin-bottom: -20px !important; }
.m-b-15 { margin-bottom: -15px !important; }
.m-b-10 { margin-bottom: -10px !important; }
.m-b-5 { margin-bottom: -5px !important; }
.m-b0 { margin-bottom: 0 !important; }
.m-b5 { margin-bottom: 5px !important; }
.m-b10 { margin-bottom: 10px !important; }
.m-b15 { margin-bottom: 15px !important; }
.m-b20 { margin-bottom: 20px !important; }
.m-b25 { margin-bottom: 25px !important; }
.m-b30 { margin-bottom: 30px !important; }
.m-b35 { margin-bottom: 35px !important; }
.m-b40 { margin-bottom: 40px !important; }
.m-b45 { margin-bottom: 45px !important; }
.m-b50 { margin-bottom: 50px !important; }
.m-b55 { margin-bottom: 55px !important; }
.m-b60 { margin-bottom: 60px !important; }
.m-b65 { margin-bottom: 65px !important; }
.m-b70 { margin-bottom: 70px !important; }
.m-b75 { margin-bottom: 75px !important; }
.m-b80 { margin-bottom: 80px !important; }
.m-b85 { margin-bottom: 85px !important; }
.m-b90 { margin-bottom: 90px !important; }
.m-b95 { margin-bottom: 95px !important; }
.m-b100 { margin-bottom: 100px !important; }
.m-l-50 { margin-left: -50px !important; }
.m-l-45 { margin-left: -45px !important; }
.m-l-40 { margin-left: -40px !important; }
.m-l-35 { margin-left: -35px !important; }
.m-l-30 { margin-left: -30px !important; }
.m-l-25 { margin-left: -25px !important; }
.m-l-20 { margin-left: -20px !important; }
.m-l-15 { margin-left: -15px !important; }
.m-l-10 { margin-left: -10px !important; }
.m-l-5 { margin-left: -5px !important; }
.m-l0 { margin-left: 0 !important; }
.m-l5 { margin-left: 5px !important; }
.m-l10 { margin-left: 10px !important; }
.m-l15 { margin-left: 15px !important; }
.m-l20 { margin-left: 20px !important; }
.m-l25 { margin-left: 25px !important; }
.m-l30 { margin-left: 30px !important; }
.m-l35 { margin-left: 35px !important; }
.m-l40 { margin-left: 40px !important; }
.m-l45 { margin-left: 45px !important; }
.m-l50 { margin-left: 50px !important; }
.m-l55 { margin-left: 55px !important; }
.m-l60 { margin-left: 60px !important; }
.m-l65 { margin-left: 65px !important; }
.m-l70 { margin-left: 70px !important; }
.m-l75 { margin-left: 75px !important; }
.m-l80 { margin-left: 80px !important; }
.m-l85 { margin-left: 85px !important; }
.m-l90 { margin-left: 90px !important; }
.m-l95 { margin-left: 95px !important; }
.m-l100 { margin-left: 100px !important; }
@media print, screen and (min-width: 821px) {
    .m-0-pc { margin: 0 !important; }
    .m-t-50-pc { margin-top: -50px !important; }
    .m-t-45-pc { margin-top: -45px !important; }
    .m-t-40-pc { margin-top: -40px !important; }
    .m-t-35-pc { margin-top: -35px !important; }
    .m-t-30-pc { margin-top: -30px !important; }
    .m-t-25-pc { margin-top: -25px !important; }
    .m-t-20-pc { margin-top: -20px !important; }
    .m-t-15-pc { margin-top: -15px !important; }
    .m-t-10-pc { margin-top: -10px !important; }
    .m-t-5-pc { margin-top: -5px !important; }
    .m-t0-pc { margin-top: 0 !important; }
    .m-t5-pc { margin-top: 5px !important; }
    .m-t10-pc { margin-top: 10px !important; }
    .m-t15-pc { margin-top: 15px !important; }
    .m-t20-pc { margin-top: 20px !important; }
    .m-t25-pc { margin-top: 25px !important; }
    .m-t30-pc { margin-top: 30px !important; }
    .m-t35-pc { margin-top: 35px !important; }
    .m-t40-pc { margin-top: 40px !important; }
    .m-t45-pc { margin-top: 45px !important; }
    .m-t50-pc { margin-top: 50px !important; }
    .m-t55-pc { margin-top: 55px !important; }
    .m-t60-pc { margin-top: 60px !important; }
    .m-t65-pc { margin-top: 65px !important; }
    .m-t70-pc { margin-top: 70px !important; }
    .m-t75-pc { margin-top: 75px !important; }
    .m-t80-pc { margin-top: 80px !important; }
    .m-t85-pc { margin-top: 85px !important; }
    .m-t90-pc { margin-top: 90px !important; }
    .m-t95-pc { margin-top: 95px !important; }
    .m-t100-pc { margin-top: 100px !important; }
    .m-r-50-pc { margin-right: -50px !important; }
    .m-r-45-pc { margin-right: -45px !important; }
    .m-r-40-pc { margin-right: -40px !important; }
    .m-r-35-pc { margin-right: -35px !important; }
    .m-r-30-pc { margin-right: -30px !important; }
    .m-r-25-pc { margin-right: -25px !important; }
    .m-r-20-pc { margin-right: -20px !important; }
    .m-r-15-pc { margin-right: -15px !important; }
    .m-r-10-pc { margin-right: -10px !important; }
    .m-r-5-pc { margin-right: -5px !important; }
    .m-r0-pc { margin-right: 0 !important; }
    .m-r5-pc { margin-right: 5px !important; }
    .m-r10-pc { margin-right: 10px !important; }
    .m-r15-pc { margin-right: 15px !important; }
    .m-r20-pc { margin-right: 20px !important; }
    .m-r25-pc { margin-right: 25px !important; }
    .m-r30-pc { margin-right: 30px !important; }
    .m-r35-pc { margin-right: 35px !important; }
    .m-r40-pc { margin-right: 40px !important; }
    .m-r45-pc { margin-right: 45px !important; }
    .m-r50-pc { margin-right: 50px !important; }
    .m-r55-pc { margin-right: 55px !important; }
    .m-r60-pc { margin-right: 60px !important; }
    .m-r65-pc { margin-right: 65px !important; }
    .m-r70-pc { margin-right: 70px !important; }
    .m-r75-pc { margin-right: 75px !important; }
    .m-r80-pc { margin-right: 80px !important; }
    .m-r85-pc { margin-right: 85px !important; }
    .m-r90-pc { margin-right: 90px !important; }
    .m-r95-pc { margin-right: 95px !important; }
    .m-r100-pc { margin-right: 100px !important; }
    .m-b-50-pc { margin-bottom: -50px !important; }
    .m-b-45-pc { margin-bottom: -45px !important; }
    .m-b-40-pc { margin-bottom: -40px !important; }
    .m-b-35-pc { margin-bottom: -35px !important; }
    .m-b-30-pc { margin-bottom: -30px !important; }
    .m-b-25-pc { margin-bottom: -25px !important; }
    .m-b-20-pc { margin-bottom: -20px !important; }
    .m-b-15-pc { margin-bottom: -15px !important; }
    .m-b-10-pc { margin-bottom: -10px !important; }
    .m-b-5-pc { margin-bottom: -5px !important; }
    .m-b0-pc { margin-bottom: 0 !important; }
    .m-b5-pc { margin-bottom: 5px !important; }
    .m-b10-pc { margin-bottom: 10px !important; }
    .m-b15-pc { margin-bottom: 15px !important; }
    .m-b20-pc { margin-bottom: 20px !important; }
    .m-b25-pc { margin-bottom: 25px !important; }
    .m-b30-pc { margin-bottom: 30px !important; }
    .m-b35-pc { margin-bottom: 35px !important; }
    .m-b40-pc { margin-bottom: 40px !important; }
    .m-b45-pc { margin-bottom: 45px !important; }
    .m-b50-pc { margin-bottom: 50px !important; }
    .m-b55-pc { margin-bottom: 55px !important; }
    .m-b60-pc { margin-bottom: 60px !important; }
    .m-b65-pc { margin-bottom: 65px !important; }
    .m-b70-pc { margin-bottom: 70px !important; }
    .m-b75-pc { margin-bottom: 75px !important; }
    .m-b80-pc { margin-bottom: 80px !important; }
    .m-b85-pc { margin-bottom: 85px !important; }
    .m-b90-pc { margin-bottom: 90px !important; }
    .m-b95-pc { margin-bottom: 95px !important; }
    .m-b100-pc { margin-bottom: 100px !important; }
    .m-l-50-pc { margin-left: -50px !important; }
    .m-l-45-pc { margin-left: -45px !important; }
    .m-l-40-pc { margin-left: -40px !important; }
    .m-l-35-pc { margin-left: -35px !important; }
    .m-l-30-pc { margin-left: -30px !important; }
    .m-l-25-pc { margin-left: -25px !important; }
    .m-l-20-pc { margin-left: -20px !important; }
    .m-l-15-pc { margin-left: -15px !important; }
    .m-l-10-pc { margin-left: -10px !important; }
    .m-l-5-pc { margin-left: -5px !important; }
    .m-l0-pc { margin-left: 0 !important; }
    .m-l5-pc { margin-left: 5px !important; }
    .m-l10-pc { margin-left: 10px !important; }
    .m-l15-pc { margin-left: 15px !important; }
    .m-l20-pc { margin-left: 20px !important; }
    .m-l25-pc { margin-left: 25px !important; }
    .m-l30-pc { margin-left: 30px !important; }
    .m-l35-pc { margin-left: 35px !important; }
    .m-l40-pc { margin-left: 40px !important; }
    .m-l45-pc { margin-left: 45px !important; }
    .m-l50-pc { margin-left: 50px !important; }
    .m-l55-pc { margin-left: 55px !important; }
    .m-l60-pc { margin-left: 60px !important; }
    .m-l65-pc { margin-left: 65px !important; }
    .m-l70-pc { margin-left: 70px !important; }
    .m-l75-pc { margin-left: 75px !important; }
    .m-l80-pc { margin-left: 80px !important; }
    .m-l85-pc { margin-left: 85px !important; }
    .m-l90-pc { margin-left: 90px !important; }
    .m-l95-pc { margin-left: 95px !important; }
    .m-l100-pc { margin-left: 100px !important; }
}
@media print, screen and (max-width: 820px) {
    .m-0-sp { margin: 0 !important; }
    .m-t-50-sp { margin-top: -50px !important; }
    .m-t-45-sp { margin-top: -45px !important; }
    .m-t-40-sp { margin-top: -40px !important; }
    .m-t-35-sp { margin-top: -35px !important; }
    .m-t-30-sp { margin-top: -30px !important; }
    .m-t-25-sp { margin-top: -25px !important; }
    .m-t-20-sp { margin-top: -20px !important; }
    .m-t-15-sp { margin-top: -15px !important; }
    .m-t-10-sp { margin-top: -10px !important; }
    .m-t-5 { margin-top: -5px !important; }
    .m-t0-sp { margin-top: 0 !important; }
    .m-t5-sp { margin-top: 5px !important; }
    .m-t10-sp { margin-top: 10px !important; }
    .m-t15-sp { margin-top: 15px !important; }
    .m-t20-sp { margin-top: 20px !important; }
    .m-t25-sp { margin-top: 25px !important; }
    .m-t30-sp { margin-top: 30px !important; }
    .m-t35-sp { margin-top: 35px !important; }
    .m-t40-sp { margin-top: 40px !important; }
    .m-t45-sp { margin-top: 45px !important; }
    .m-t50-sp { margin-top: 50px !important; }
    .m-t55-sp { margin-top: 55px !important; }
    .m-t60-sp { margin-top: 60px !important; }
    .m-t65-sp { margin-top: 65px !important; }
    .m-t70-sp { margin-top: 70px !important; }
    .m-t75-sp { margin-top: 75px !important; }
    .m-t80-sp { margin-top: 80px !important; }
    .m-t85-sp { margin-top: 85px !important; }
    .m-t90-sp { margin-top: 90px !important; }
    .m-t95-sp { margin-top: 95px !important; }
    .m-t100-sp { margin-top: 100px !important; }
    .m-r-50-sp { margin-right: -50px !important; }
    .m-r-45-sp { margin-right: -45px !important; }
    .m-r-40-sp { margin-right: -40px !important; }
    .m-r-35-sp { margin-right: -35px !important; }
    .m-r-30-sp { margin-right: -30px !important; }
    .m-r-25-sp { margin-right: -25px !important; }
    .m-r-20-sp { margin-right: -20px !important; }
    .m-r-15-sp { margin-right: -15px !important; }
    .m-r-10-sp { margin-right: -10px !important; }
    .m-r-5-sp { margin-right: -5px !important; }
    .m-r0-sp { margin-right: 0 !important; }
    .m-r5-sp { margin-right: 5px !important; }
    .m-r10-sp { margin-right: 10px !important; }
    .m-r15-sp { margin-right: 15px !important; }
    .m-r20-sp { margin-right: 20px !important; }
    .m-r25-sp { margin-right: 25px !important; }
    .m-r30-sp { margin-right: 30px !important; }
    .m-r35-sp { margin-right: 35px !important; }
    .m-r40-sp { margin-right: 40px !important; }
    .m-r45-sp { margin-right: 45px !important; }
    .m-r50-sp { margin-right: 50px !important; }
    .m-r55-sp { margin-right: 55px !important; }
    .m-r60-sp { margin-right: 60px !important; }
    .m-r65-sp { margin-right: 65px !important; }
    .m-r70-sp { margin-right: 70px !important; }
    .m-r75-sp { margin-right: 75px !important; }
    .m-r80-sp { margin-right: 80px !important; }
    .m-r85-sp { margin-right: 85px !important; }
    .m-r90-sp { margin-right: 90px !important; }
    .m-r95-sp { margin-right: 95px !important; }
    .m-r100-sp { margin-right: 100px !important; }
    .m-b-50-sp { margin-bottom: -50px !important; }
    .m-b-45-sp { margin-bottom: -45px !important; }
    .m-b-40-sp { margin-bottom: -40px !important; }
    .m-b-35-sp { margin-bottom: -35px !important; }
    .m-b-30-sp { margin-bottom: -30px !important; }
    .m-b-25-sp { margin-bottom: -25px !important; }
    .m-b-20-sp { margin-bottom: -20px !important; }
    .m-b-15-sp { margin-bottom: -15px !important; }
    .m-b-10-sp { margin-bottom: -10px !important; }
    .m-b-5-sp { margin-bottom: -5px !important; }
    .m-b0-sp { margin-bottom: 0 !important; }
    .m-b5-sp { margin-bottom: 5px !important; }
    .m-b10-sp { margin-bottom: 10px !important; }
    .m-b15-sp { margin-bottom: 15px !important; }
    .m-b20-sp { margin-bottom: 20px !important; }
    .m-b25-sp { margin-bottom: 25px !important; }
    .m-b30-sp { margin-bottom: 30px !important; }
    .m-b35-sp { margin-bottom: 35px !important; }
    .m-b40-sp { margin-bottom: 40px !important; }
    .m-b45-sp { margin-bottom: 45px !important; }
    .m-b50-sp { margin-bottom: 50px !important; }
    .m-b55-sp { margin-bottom: 55px !important; }
    .m-b60-sp { margin-bottom: 60px !important; }
    .m-b65-sp { margin-bottom: 65px !important; }
    .m-b70-sp { margin-bottom: 70px !important; }
    .m-b75-sp { margin-bottom: 75px !important; }
    .m-b80-sp { margin-bottom: 80px !important; }
    .m-b85-sp { margin-bottom: 85px !important; }
    .m-b90-sp { margin-bottom: 90px !important; }
    .m-b95-sp { margin-bottom: 95px !important; }
    .m-b100-sp { margin-bottom: 100px !important; }
    .m-l-50-sp { margin-left: -50px !important; }
    .m-l-45-sp { margin-left: -45px !important; }
    .m-l-40-sp { margin-left: -40px !important; }
    .m-l-35-sp { margin-left: -35px !important; }
    .m-l-30-sp { margin-left: -30px !important; }
    .m-l-25-sp { margin-left: -25px !important; }
    .m-l-20-sp { margin-left: -20px !important; }
    .m-l-15-sp { margin-left: -15px !important; }
    .m-l-10-sp { margin-left: -10px !important; }
    .m-l-5-sp { margin-left: -5px !important; }
    .m-l0-sp { margin-left: 0 !important; }
    .m-l5-sp { margin-left: 5px !important; }
    .m-l10-sp { margin-left: 10px !important; }
    .m-l15-sp { margin-left: 15px !important; }
    .m-l20-sp { margin-left: 20px !important; }
    .m-l25-sp { margin-left: 25px !important; }
    .m-l30-sp { margin-left: 30px !important; }
    .m-l35-sp { margin-left: 35px !important; }
    .m-l40-sp { margin-left: 40px !important; }
    .m-l45-sp { margin-left: 45px !important; }
    .m-l50-sp { margin-left: 50px !important; }
    .m-l55-sp { margin-left: 55px !important; }
    .m-l60-sp { margin-left: 60px !important; }
    .m-l65-sp { margin-left: 65px !important; }
    .m-l70-sp { margin-left: 70px !important; }
    .m-l75-sp { margin-left: 75px !important; }
    .m-l80-sp { margin-left: 80px !important; }
    .m-l85-sp { margin-left: 85px !important; }
    .m-l90-sp { margin-left: 90px !important; }
    .m-l95-sp { margin-left: 95px !important; }
    .m-l100-sp { margin-left: 100px !important; }
}



/* パディング
--------------------------------------------------------- */
.p-0 { padding: 0 !important; }
.p-5 { padding: 5px !important; }
.p-10 { padding: 10px !important; }
.p-15 { padding: 15px !important; }
.p-20 { padding: 20px !important; }
.p-25 { padding: 25px !important; }
.p-30 { padding: 30px !important; }
.p-t0 { padding-top: 0 !important; }
.p-t5 { padding-top: 5px !important; }
.p-t10 { padding-top: 10px !important; }
.p-t15 { padding-top: 15px !important; }
.p-t20 { padding-top: 20px !important; }
.p-t25 { padding-top: 25px !important; }
.p-t30 { padding-top: 30px !important; }
.p-t35 { padding-top: 35px !important; }
.p-t40 { padding-top: 40px !important; }
.p-t45 { padding-top: 45px !important; }
.p-t50 { padding-top: 50px !important; }
.p-t55 { padding-top: 55px !important; }
.p-t60 { padding-top: 60px !important; }
.p-t65 { padding-top: 65px !important; }
.p-t70 { padding-top: 70px !important; }
.p-t75 { padding-top: 75px !important; }
.p-t80 { padding-top: 80px !important; }
.p-t85 { padding-top: 85px !important; }
.p-t90 { padding-top: 90px !important; }
.p-t95 { padding-top: 95px !important; }
.p-t100 { padding-top: 100px !important; }
.p-r0 { padding-right: 0 !important; }
.p-r5 { padding-right: 5px !important; }
.p-r10 { padding-right: 10px !important; }
.p-r15 { padding-right: 15px !important; }
.p-r20 { padding-right: 20px !important; }
.p-r25 { padding-right: 25px !important; }
.p-r30 { padding-right: 30px !important; }
.p-r35 { padding-right: 35px !important; }
.p-r40 { padding-right: 40px !important; }
.p-r45 { padding-right: 45px !important; }
.p-r50 { padding-right: 50px !important; }
.p-r55 { padding-right: 55px !important; }
.p-r60 { padding-right: 60px !important; }
.p-r65 { padding-right: 65px !important; }
.p-r70 { padding-right: 70px !important; }
.p-r75 { padding-right: 75px !important; }
.p-r80 { padding-right: 80px !important; }
.p-r85 { padding-right: 85px !important; }
.p-r90 { padding-right: 90px !important; }
.p-r95 { padding-right: 95px !important; }
.p-r100 { padding-right: 100px !important; }
.p-b0 { padding-bottom: 0 !important; }
.p-b5 { padding-bottom: 5px !important; }
.p-b10 { padding-bottom: 10px !important; }
.p-b15 { padding-bottom: 15px !important; }
.p-b20 { padding-bottom: 20px !important; }
.p-b25 { padding-bottom: 25px !important; }
.p-b30 { padding-bottom: 30px !important; }
.p-b35 { padding-bottom: 35px !important; }
.p-b40 { padding-bottom: 40px !important; }
.p-b45 { padding-bottom: 45px !important; }
.p-b50 { padding-bottom: 50px !important; }
.p-b55 { padding-bottom: 55px !important; }
.p-b60 { padding-bottom: 60px !important; }
.p-b65 { padding-bottom: 65px !important; }
.p-b70 { padding-bottom: 70px !important; }
.p-b75 { padding-bottom: 75px !important; }
.p-b80 { padding-bottom: 80px !important; }
.p-b85 { padding-bottom: 85px !important; }
.p-b90 { padding-bottom: 90px !important; }
.p-b95 { padding-bottom: 95px !important; }
.p-b100 { padding-bottom: 100px !important; }
.p-l0 { padding-left: 0 !important; }
.p-l5 { padding-left: 5px !important; }
.p-l10 { padding-left: 10px !important; }
.p-l15 { padding-left: 15px !important; }
.p-l20 { padding-left: 20px !important; }
.p-l25 { padding-left: 25px !important; }
.p-l30 { padding-left: 30px !important; }
.p-l35 { padding-left: 35px !important; }
.p-l40 { padding-left: 40px !important; }
.p-l45 { padding-left: 45px !important; }
.p-l50 { padding-left: 50px !important; }
.p-l55 { padding-left: 55px !important; }
.p-l60 { padding-left: 60px !important; }
.p-l65 { padding-left: 65px !important; }
.p-l70 { padding-left: 70px !important; }
.p-l75 { padding-left: 75px !important; }
.p-l80 { padding-left: 80px !important; }
.p-l85 { padding-left: 85px !important; }
.p-l90 { padding-left: 90px !important; }
.p-l95 { padding-left: 95px !important; }
.p-l100 { padding-left: 100px !important; }
@media print, screen and (min-width: 821px) {
    .p-0-pc { padding: 0 !important; }
    .p-t0-pc { padding-top: 0 !important; }
    .p-t5-pc { padding-top: 5px !important; }
    .p-t10-pc { padding-top: 10px !important; }
    .p-t15-pc { padding-top: 15px !important; }
    .p-t20-pc { padding-top: 20px !important; }
    .p-t25-pc { padding-top: 25px !important; }
    .p-t30-pc { padding-top: 30px !important; }
    .p-t35-pc { padding-top: 35px !important; }
    .p-t40-pc { padding-top: 40px !important; }
    .p-t45-pc { padding-top: 45px !important; }
    .p-t50-pc { padding-top: 50px !important; }
    .p-t55-pc { padding-top: 55px !important; }
    .p-t60-pc { padding-top: 60px !important; }
    .p-t65-pc { padding-top: 65px !important; }
    .p-t70-pc { padding-top: 70px !important; }
    .p-t75-pc { padding-top: 75px !important; }
    .p-t80-pc { padding-top: 80px !important; }
    .p-t85-pc { padding-top: 85px !important; }
    .p-t90-pc { padding-top: 90px !important; }
    .p-t95-pc { padding-top: 95px !important; }
    .p-t100-pc { padding-top: 100px !important; }
    .p-r0-pc { padding-right: 0 !important; }
    .p-r5-pc { padding-right: 5px !important; }
    .p-r10-pc { padding-right: 10px !important; }
    .p-r15-pc { padding-right: 15px !important; }
    .p-r20-pc { padding-right: 20px !important; }
    .p-r25-pc { padding-right: 25px !important; }
    .p-r30-pc { padding-right: 30px !important; }
    .p-r35-pc { padding-right: 35px !important; }
    .p-r40-pc { padding-right: 40px !important; }
    .p-r45-pc { padding-right: 45px !important; }
    .p-r50-pc { padding-right: 50px !important; }
    .p-r55-pc { padding-right: 55px !important; }
    .p-r60-pc { padding-right: 60px !important; }
    .p-r65-pc { padding-right: 65px !important; }
    .p-r70-pc { padding-right: 70px !important; }
    .p-r75-pc { padding-right: 75px !important; }
    .p-r80-pc { padding-right: 80px !important; }
    .p-r85-pc { padding-right: 85px !important; }
    .p-r90-pc { padding-right: 90px !important; }
    .p-r95-pc { padding-right: 95px !important; }
    .p-r100-pc { padding-right: 100px !important; }
    .p-b0-pc { padding-bottom: 0 !important; }
    .p-b5-pc { padding-bottom: 5px !important; }
    .p-b10-pc { padding-bottom: 10px !important; }
    .p-b15-pc { padding-bottom: 15px !important; }
    .p-b20-pc { padding-bottom: 20px !important; }
    .p-b25-pc { padding-bottom: 25px !important; }
    .p-b30-pc { padding-bottom: 30px !important; }
    .p-b35-pc { padding-bottom: 35px !important; }
    .p-b40-pc { padding-bottom: 40px !important; }
    .p-b45-pc { padding-bottom: 45px !important; }
    .p-b50-pc { padding-bottom: 50px !important; }
    .p-b55-pc { padding-bottom: 55px !important; }
    .p-b60-pc { padding-bottom: 60px !important; }
    .p-b65-pc { padding-bottom: 65px !important; }
    .p-b70-pc { padding-bottom: 70px !important; }
    .p-b75-pc { padding-bottom: 75px !important; }
    .p-b80-pc { padding-bottom: 80px !important; }
    .p-b85-pc { padding-bottom: 85px !important; }
    .p-b90-pc { padding-bottom: 90px !important; }
    .p-b95-pc { padding-bottom: 95px !important; }
    .p-b100-pc { padding-bottom: 100px !important; }
    .p-l0-pc { padding-left: 0 !important; }
    .p-l5-pc { padding-left: 5px !important; }
    .p-l10-pc { padding-left: 10px !important; }
    .p-l15-pc { padding-left: 15px !important; }
    .p-l20-pc { padding-left: 20px !important; }
    .p-l25-pc { padding-left: 25px !important; }
    .p-l30-pc { padding-left: 30px !important; }
    .p-l35-pc { padding-left: 35px !important; }
    .p-l40-pc { padding-left: 40px !important; }
    .p-l45-pc { padding-left: 45px !important; }
    .p-l50-pc { padding-left: 50px !important; }
    .p-l55-pc { padding-left: 55px !important; }
    .p-l60-pc { padding-left: 60px !important; }
    .p-l65-pc { padding-left: 65px !important; }
    .p-l70-pc { padding-left: 70px !important; }
    .p-l75-pc { padding-left: 75px !important; }
    .p-l80-pc { padding-left: 80px !important; }
    .p-l85-pc { padding-left: 85px !important; }
    .p-l90-pc { padding-left: 90px !important; }
    .p-l95-pc { padding-left: 95px !important; }
    .p-l100-pc { padding-left: 100px !important; }
}
@media print, screen and (max-width: 820px) {
    .p-0-sp { padding: 0 !important; }
    .p-t0-sp { padding-top: 0 !important; }
    .p-t5-sp { padding-top: 5px !important; }
    .p-t10-sp { padding-top: 10px !important; }
    .p-t15-sp { padding-top: 15px !important; }
    .p-t20-sp { padding-top: 20px !important; }
    .p-t25-sp { padding-top: 25px !important; }
    .p-t30-sp { padding-top: 30px !important; }
    .p-t35-sp { padding-top: 35px !important; }
    .p-t40-sp { padding-top: 40px !important; }
    .p-t45-sp { padding-top: 45px !important; }
    .p-t50-sp { padding-top: 50px !important; }
    .p-t55-sp { padding-top: 55px !important; }
    .p-t60-sp { padding-top: 60px !important; }
    .p-t65-sp { padding-top: 65px !important; }
    .p-t70-sp { padding-top: 70px !important; }
    .p-t75-sp { padding-top: 75px !important; }
    .p-t80-sp { padding-top: 80px !important; }
    .p-t85-sp { padding-top: 85px !important; }
    .p-t90-sp { padding-top: 90px !important; }
    .p-t95-sp { padding-top: 95px !important; }
    .p-t100-sp { padding-top: 100px !important; }
    .p-r0-sp { padding-right: 0 !important; }
    .p-r5-sp { padding-right: 5px !important; }
    .p-r10-sp { padding-right: 10px !important; }
    .p-r15-sp { padding-right: 15px !important; }
    .p-r20-sp { padding-right: 20px !important; }
    .p-r25-sp { padding-right: 25px !important; }
    .p-r30-sp { padding-right: 30px !important; }
    .p-r35-sp { padding-right: 35px !important; }
    .p-r40-sp { padding-right: 40px !important; }
    .p-r45-sp { padding-right: 45px !important; }
    .p-r50-sp { padding-right: 50px !important; }
    .p-r55-sp { padding-right: 55px !important; }
    .p-r60-sp { padding-right: 60px !important; }
    .p-r65-sp { padding-right: 65px !important; }
    .p-r70-sp { padding-right: 70px !important; }
    .p-r75-sp { padding-right: 75px !important; }
    .p-r80-sp { padding-right: 80px !important; }
    .p-r85-sp { padding-right: 85px !important; }
    .p-r90-sp { padding-right: 90px !important; }
    .p-r95-sp { padding-right: 95px !important; }
    .p-r100-sp { padding-right: 100px !important; }
    .p-b0-sp { padding-bottom: 0 !important; }
    .p-b5-sp { padding-bottom: 5px !important; }
    .p-b10-sp { padding-bottom: 10px !important; }
    .p-b15-sp { padding-bottom: 15px !important; }
    .p-b20-sp { padding-bottom: 20px !important; }
    .p-b25-sp { padding-bottom: 25px !important; }
    .p-b30-sp { padding-bottom: 30px !important; }
    .p-b35-sp { padding-bottom: 35px !important; }
    .p-b40-sp { padding-bottom: 40px !important; }
    .p-b45-sp { padding-bottom: 45px !important; }
    .p-b50-sp { padding-bottom: 50px !important; }
    .p-b55-sp { padding-bottom: 55px !important; }
    .p-b60-sp { padding-bottom: 60px !important; }
    .p-b65-sp { padding-bottom: 65px !important; }
    .p-b70-sp { padding-bottom: 70px !important; }
    .p-b75-sp { padding-bottom: 75px !important; }
    .p-b80-sp { padding-bottom: 80px !important; }
    .p-b85-sp { padding-bottom: 85px !important; }
    .p-b90-sp { padding-bottom: 90px !important; }
    .p-b95-sp { padding-bottom: 95px !important; }
    .p-b100-sp { padding-bottom: 100px !important; }
    .p-l0-sp { padding-left: 0 !important; }
    .p-l5-sp { padding-left: 5px !important; }
    .p-l10-sp { padding-left: 10px !important; }
    .p-l15-sp { padding-left: 15px !important; }
    .p-l20-sp { padding-left: 20px !important; }
    .p-l25-sp { padding-left: 25px !important; }
    .p-l30-sp { padding-left: 30px !important; }
    .p-l35-sp { padding-left: 35px !important; }
    .p-l40-sp { padding-left: 40px !important; }
    .p-l45-sp { padding-left: 45px !important; }
    .p-l50-sp { padding-left: 50px !important; }
    .p-l55-sp { padding-left: 55px !important; }
    .p-l60-sp { padding-left: 60px !important; }
    .p-l65-sp { padding-left: 65px !important; }
    .p-l70-sp { padding-left: 70px !important; }
    .p-l75-sp { padding-left: 75px !important; }
    .p-l80-sp { padding-left: 80px !important; }
    .p-l85-sp { padding-left: 85px !important; }
    .p-l90-sp { padding-left: 90px !important; }
    .p-l95-sp { padding-left: 95px !important; }
    .p-l100-sp { padding-left: 100px !important; }
}



/* フォント・テキスト
--------------------------------------------------------- */

/* ----- font-family ----- */

/* ----- font-size ----- */
.fs-9 { font-size: 0.9rem !important; }
.fs-10 { font-size: 1.0rem !important; }
.fs-11 { font-size: 1.1rem !important; }
.fs-12 { font-size: 1.2rem !important; }
.fs-13 { font-size: 1.3rem !important; }
.fs-14 { font-size: 1.4rem !important; }
.fs-15 { font-size: 1.5rem !important; }
.fs-16 { font-size: 1.6rem !important; }
.fs-17 { font-size: 1.7rem !important; }
.fs-18 { font-size: 1.8rem !important; }
.fs-19 { font-size: 1.9rem !important; }
.fs-20 { font-size: 2.0rem !important; }
@media print, screen and (min-width: 821px) {
    .fs-9-pc { font-size: 0.9rem !important; }
    .fs-10-pc { font-size: 1.0rem !important; }
    .fs-11-pc { font-size: 1.1rem !important; }
    .fs-12-pc { font-size: 1.2rem !important; }
    .fs-13-pc { font-size: 1.3rem !important; }
    .fs-14-pc { font-size: 1.4rem !important; }
    .fs-15-pc { font-size: 1.5rem !important; }
    .fs-16-pc { font-size: 1.6rem !important; }
    .fs-17-pc { font-size: 1.7rem !important; }
    .fs-18-pc { font-size: 1.8rem !important; }
    .fs-19-pc { font-size: 1.9rem !important; }
    .fs-20-pc { font-size: 2.0rem !important; }
}
@media print, screen and (max-width: 820px) {
    .fs-9-sp { font-size: 0.9rem !important; }
    .fs-10-sp { font-size: 1.0rem !important; }
    .fs-11-sp { font-size: 1.1rem !important; }
    .fs-12-sp { font-size: 1.2rem !important; }
    .fs-13-sp { font-size: 1.3rem !important; }
    .fs-14-sp { font-size: 1.4rem !important; }
    .fs-15-sp { font-size: 1.5rem !important; }
    .fs-16-sp { font-size: 1.6rem !important; }
    .fs-17-sp { font-size: 1.7rem !important; }
    .fs-18-sp { font-size: 1.8rem !important; }
    .fs-19-sp { font-size: 1.9rem !important; }
    .fs-20-sp { font-size: 2.0rem !important; }
}

/* ----- font-weight ----- */
.fw-n { font-weight: normal !important; }
.fw-b { font-weight: bold !important; }
@media print, screen and (min-width: 821px) {
    .fw-n-pc { font-weight: normal !important; }
    .fw-b-pc { font-weight: bold !important; }
}
@media print, screen and (max-width: 820px) {
    .fw-n-sp { font-weight: normal !important; }
    .fw-b-sp { font-weight: bold !important; }
}

/* ----- text-decoration ----- */
.td-n { text-decoration: none !important; }
.td-u { text-decoration: underline !important; }
@media print, screen and (min-width: 821px) {
    .td-n-pc { text-decoration: none !important; }
    .td-u-pc { text-decoration: underline !important; }
}
@media print, screen and (max-width: 820px) {
    .td-n-sp { text-decoration: none !important; }
    .td-u-sp { text-decoration: underline !important; }
}

/* ----- text-align ----- */
.ta-l { text-align: left !important; }
.ta-c { text-align: center !important; }
.ta-r { text-align: right !important; }
.ta-j { text-align: justify !important; }
@media print, screen and (min-width: 821px) {
    .ta-l-pc { text-align: left !important; }
    .ta-c-pc { text-align: center !important; }
    .ta-r-pc { text-align: right !important; }
    .ta-j-pc { text-align: justify !important; }
}
@media print, screen and (max-width: 820px) {
    .ta-l-sp { text-align: left !important; }
    .ta-c-sp { text-align: center !important; }
    .ta-r-sp { text-align: right !important; }
    .ta-j-sp { text-align: justify !important; }
}

/* ----- vertical-align ----- */
.va-t { vertical-align: top !important; }
.va-m { vertical-align: middle !important; }
.va-b { vertical-align: bottom !important; }
@media print, screen and (min-width: 821px) {
    .va-t-pc { vertical-align: top !important; }
    .va-m-pc { vertical-align: middle !important; }
    .va-b-pc { vertical-align: bottom !important; }
}
@media print, screen and (max-width: 820px) {
    .va-t-sp { vertical-align: top !important; }
    .va-m-sp { vertical-align: middle !important; }
    .va-b-sp { vertical-align: bottom !important; }
}

/* ----- white-space ----- */
.ws-n { white-space: normal !important; }
.ws-nw { white-space: nowrap !important; }
@media print, screen and (min-width: 821px) {
    .ws-n-pc { white-space: normal !important; }
    .ws-nw-pc { white-space: nowrap !important; }
}
@media print, screen and (max-width: 820px) {
    .ws-n-sp { white-space: normal !important; }
    .ws-nw-sp { white-space: nowrap !important; }
}

/* ----- line-height ----- */
.lh-10 { line-height: 1.0 !important; }
.lh-11 { line-height: 1.1 !important; }
.lh-12 { line-height: 1.2 !important; }
.lh-13 { line-height: 1.3 !important; }
.lh-14 { line-height: 1.4 !important; }
.lh-15 { line-height: 1.5 !important; }
.lh-16 { line-height: 1.6 !important; }
.lh-17 { line-height: 1.7 !important; }
.lh-18 { line-height: 1.8 !important; }
.lh-19 { line-height: 1.9 !important; }
.lh-20 { line-height: 2.0 !important; }
@media print, screen and (min-width: 821px) {
    .lh-10-pc { line-height: 1.0 !important; }
    .lh-11-pc { line-height: 1.1 !important; }
    .lh-12-pc { line-height: 1.2 !important; }
    .lh-13-pc { line-height: 1.3 !important; }
    .lh-14-pc { line-height: 1.4 !important; }
    .lh-15-pc { line-height: 1.5 !important; }
    .lh-16-pc { line-height: 1.6 !important; }
    .lh-17-pc { line-height: 1.7 !important; }
    .lh-18-pc { line-height: 1.8 !important; }
    .lh-19-pc { line-height: 1.9 !important; }
    .lh-20-pc { line-height: 2.0 !important; }
}
@media print, screen and (max-width: 820px) {
    .lh-10-sp { line-height: 1.0 !important; }
    .lh-11-sp { line-height: 1.1 !important; }
    .lh-12-sp { line-height: 1.2 !important; }
    .lh-13-sp { line-height: 1.3 !important; }
    .lh-14-sp { line-height: 1.4 !important; }
    .lh-15-sp { line-height: 1.5 !important; }
    .lh-16-sp { line-height: 1.6 !important; }
    .lh-17-sp { line-height: 1.7 !important; }
    .lh-18-sp { line-height: 1.8 !important; }
    .lh-19-sp { line-height: 1.9 !important; }
    .lh-20-sp { line-height: 2.0 !important; }
}
/* Twitterウィジェットのスタイル */
.twitter-widget {
    display: block;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
}
