@charset "utf-8";

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

/* 基本
----------------------------------------------------------*/
html {
    overflow-y: scroll;
    font-size: 62.5%;
}
body {
    margin: 0;
    padding: 0;
    background: #ffffff;
    color: #333333;
    font-size: 1.6rem;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
}
body, button, input, select, textarea {
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font-hiragino {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", 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: 1.6rem;
    vertical-align: middle;
}

/* toppage */

body.home .for_company {
	max-width: 980px;
    margin: 0  auto 0px auto ;
	padding-top: 1px;
	/*padding-bottom: 0px;*/
	text-align: right;
	font-size: 0.9em;
	height:31px;
	clear: both;
}



/* clearfixなど
----------------------------------------------------------*/
.clearfix:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
}




/* ====================================================================
 header
==================================================================== */

/* header
----------------------------------------------------------*/
@media print, screen and (min-width: 861px) {
    #header {
       width: 100%;
        margin: 0 auto;
        background: #0099ff;
        color: #ffffff;
        font-size: 1.4rem;
    }
    #header > .inner {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        /*width: 980px;*/
		max-width: 980px;
        margin: 0 auto;
        padding: 11px 0 12px 12px;
    }
    #header > .inner .header-mainlogo {
        margin: 0 auto 0 0;
    }
    #header > .inner .header-mainlogo a {
        display: block;
        overflow: hidden;
        width: 186px;
        height: 45px;
        background: url("../img/header-mainlogo01.png") 0 50% no-repeat;
        background-size: contain;
        text-indent: 100%;
        white-space: nowrap;
    }
    #header > .inner .header-mainlogo a:hover {
        opacity: .75;
    }
    #header > .inner .header-contact {
        margin: 0 40px 0 0;
    }
    #header > .inner .header-contact a {
        display: inline-block;
        padding: 0 0 0 36px;
        background: url("../img/icon-circle-arrow-right01-light-blue01.png") 0 0 no-repeat;
        background-size: 20px auto;
        color: #ffffff;
		text-decoration: none;
    }
    #header > .inner .header-contact a:hover {
        opacity: .75;
    }
    #header > .inner .header-contact a br {
        display: none;
    }
    #header > .inner .header-donate {
        -webkit-flex: 0 1 180px;
        flex: 0 1 180px;
    }
    #header > .inner .header-donate a {
        display: block;
        padding: 19px 20px 18px;
        background: #ff9c1c;
        color: #ffffff;
        font-size: 1.8rem;
        font-weight: bold;
        text-align: center;
		text-decoration: none;
    }


    /**/
    #header #global-nav-sp {
        display: none;
    }
}
@media print, screen and (max-width: 860px) {
    #header {
        position: relative;
        width: 100%;
        background: rgba(255, 255, 255, .8);
        font-size: 1.3rem;
    }
    #header.is-sticky {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1000;
    }
    #header > .inner {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        margin: 0 auto;
        padding: 7px 0 7px 20px;
    }
    #header > .inner .header-mainlogo {
        -webkit-flex: 0 1 123px;
        flex: 0 1 123px;
        margin: 0 auto 0 0;
    }
    #header > .inner .header-mainlogo a {
        display: block;
        overflow: hidden;
        height: 31px;
        background: url("../img/header-mainlogo01-sp.png") 0 50% no-repeat;
        background-size: contain;
        text-indent: 100%;
        white-space: nowrap;
    }
    #header > .inner .header-contact {
        -webkit-flex: 0 1 150px;
        flex: 0 1 150px;
        margin: 0 10px 0 20px;
        line-height: 1.2;
    }
    #header > .inner .header-contact a {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        padding: 2px 6px;
        min-height: 40px;
        background: #0099ff;
        color: #ffffff;
        text-align: center;
		text-decoration: none;
    }
    #header > .inner .header-contact a br {
        display: none;
    }
    #header > .inner .header-donate {
        -webkit-flex: 0 1 150px;
        flex: 0 1 150px;
        line-height: 1.2;
    }
    #header > .inner .header-donate a {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        padding: 2px 6px;
        min-height: 40px;
        background: #ff9c1c;
        color: #ffffff;
        text-align: center;
		text-decoration: none;
    }
    #header > .inner .header-nav-btn {
        -webkit-flex: 0 0 70px;
        flex: 0 0 70px;
        margin: 0 0 0 10px;
        padding: 0 20px 0 10px;
    }
    #header > .inner .header-nav-btn .btn {
        display: block;
        position: relative;
        width: 40px;
        height: 40px;
    }
    #header > .inner .header-nav-btn .btn .btn-icon {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 40px;
        height: 2px;
        background: #0099ff;
        transition: .2s;
        transform: translate(-50%, -50%);
    }
    #header > .inner .header-nav-btn .btn .btn-icon:before,
    #header > .inner .header-nav-btn .btn .btn-icon:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 40px;
        height: 2px;
        background: #0099ff;
        transition: .3s;
    }
    #header > .inner .header-nav-btn .btn .btn-icon:before {
        margin-top: -11px;
    }
    #header > .inner .header-nav-btn .btn .btn-icon:after {
        margin-top: 9px;
    }
    #header > .inner .header-nav-btn .btn .is-open {
        background: transparent;
    }
    #header > .inner .header-nav-btn .btn .is-open:before,
    #header > .inner .header-nav-btn .btn .is-open:after {
        margin-top: 0;
    }
    #header > .inner .header-nav-btn .btn .is-open:before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    #header > .inner .header-nav-btn .btn .is-open:after {
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    /**/
    #header #global-nav-sp {
        display: none;
        position: absolute;
        z-index: 1000;
        overflow-y: auto;
        width: 100%;
        height: calc(100vh - 100%);
        color: #ffffff;
        background: rgba(0, 0, 0, .5);
        -webkit-overflow-scrolling: touch;
    }
    #header #global-nav-sp a {
        color: #ffffff;
        font-size: 1.4rem;
		text-decoration: none;
    }
    #header #global-nav-sp > .inner {
        padding: 25px 20px 20px;
        background: #0099ff;
    }
    #header #global-nav-sp > .inner > ul {
        border-top: 1px solid #ffffff;
    }
    #header #global-nav-sp > .inner > ul > li {
        border-bottom: 1px solid #ffffff;
    }
    #header #global-nav-sp > .inner > ul > li > a {
        display: block;
        padding: 10px 35px 10px 20px;
        background: url("../img/icon-arrow-right01-white01.png") calc(100% - 20px) 50% no-repeat;
        background-size: 7px auto;
    }
    #header #global-nav-sp > .inner > ul > li .title {
        padding: 10px 35px 10px 20px;
        background: url("../img/icon-arrow-down01-white01.png") calc(100% - 18px) 50% no-repeat;
        background-size: 12px auto;
        font-size: 1.4rem;
        cursor: pointer;
    }
    #header #global-nav-sp > .inner > ul > li .title.is-open {
        background-image: url("../img/icon-cross01-white01.png");
    }
    #header #global-nav-sp > .inner > ul ul {
        display: none;
        margin: 0 0 10px;
    }
    #header #global-nav-sp > .inner > ul ul li {}
    #header #global-nav-sp > .inner > ul ul li a {
        display: block;
        padding: 5px 20px 5px 36px;
        background: url("../img/icon-arrow-right01-white01.png") 20px .72em no-repeat;
        background-size: 6px auto;
    }
}
@media print, screen and (max-width: 414px) {
    #header {
        font-size: 1.2rem;
    }
    #header > .inner {
        padding: 7px 0 7px 10px;
    }
    #header > .inner .header-mainlogo {
        -webkit-flex: 0 1 96px;
        flex: 0 1 96px;
    }
    #header > .inner .header-mainlogo a {
        height: 24px;
    }
    #header > .inner .header-contact {
        margin: 0 7px 0 10px;
    }
    #header > .inner .header-contact a br {
        display: inline-block;
    }
    #header > .inner .header-donate {
        -webkit-flex: 0 1.2 150px;
        flex: 0 1.2 150px;
    }
    #header > .inner .header-nav-btn {
        -webkit-flex: 0 0 60px;
        flex: 0 0 60px;
        margin: 0;
        padding: 0 10px;
    }

    /**/
    #header #global-nav-sp {}
    #header #global-nav-sp > .inner {
        padding: 25px 10px 20px;
    }
    #header #global-nav-sp > .inner > ul > li > a {
        padding: 10px 25px 10px 10px;
        background-position-x: calc(100% - 10px);
    }
    #header #global-nav-sp > .inner > ul > li .title {
        padding: 10px 25px 10px 10px;
        background-position-x: calc(100% - 9px);
    }
    #header #global-nav-sp > .inner > ul ul li a {
        padding: 5px 10px 5px 26px;
        background-position-x: 10px;
    }
}
@media print, screen and (max-width: 344px) {
    #header > .inner .header-contact a br {
        display: none;
    }
}




/* PC表示時の上部固定ボタン
----------------------------------------------------------*/
#header-sticky {
    display: none;
    position: relative;
    width: 980px;
    height: 0;
    margin: 0 auto;
    font-size: 1.4rem;
}
@media print, screen and (min-width: 769px) {
    #header-sticky.is-sticky {
        display: block;
    }
    #header-sticky .header-contact {
        position: fixed;
        left: calc(50% + 80px);
        top: 0;
        z-index: 1000;
        width: 230px;
    }
    #header-sticky .header-contact a {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        height: 40px;
        padding: 5px 10px;
        background: #0099ff;
        color: #ffffff;
		font-style: normal;
		text-decoration: none;

    }
    #header-sticky .header-contact a:hover {
        opacity: .75;
    }
    #header-sticky .header-contact a em {
        padding: 0 0 0 36px;
        background: url("../img/icon-circle-arrow-right01-light-blue01.png") 0 0 no-repeat;
        background-size: 20px auto;
		text-decoration: none;
		font-style: normal;
    }
    #header-sticky .header-donate {
        position: fixed;
        left: calc(50% + 330px);
        top: 0;
        z-index: 1000;
        width: 160px;
    }
    #header-sticky .header-donate a {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        height: 40px;
        padding: 5px 10px;
        background: #ff9c1c;
        color: #ffffff;
        font-weight: bold;
		text-decoration: none;
    }
    #header-sticky .header-donate a:hover {
        opacity: .75;
    }
}
@media print, screen and (max-width: 980px) {
    #header-sticky .header-contact {
        left: auto;
        right: 180px;
    }
    #header-sticky .header-donate {
        left: auto;
        right: 0;
    }
}


/* header上部固定時のスペーサー
----------------------------------------------------------*/
#header-spacer {
    height: 0;
    margin: 0;
    padding: 0;
}



/* breadcrumbs
----------------------------------------------------------*/
#breadcrumbs ul {
    font-size: 1.2rem !important;
}


/* global-nav
----------------------------------------------------------*/

#global-nav {
    /*margin: 0 0 8px;*/
	margin: 20px -20px -10px -20px;
    font-size: 1.5rem;
    line-height: 1.4;
}
#global-nav > ul {
    display: -webkit-flex;
    display: flex;
    max-width: 980px;
    margin: 0 auto;
	padding-left: 0px;
}

#contents #global-nav ul li {
	padding-left: 0px;
}
#global-nav > ul > li {
    -webkit-flex: 1 1 1px;
    flex: 1 1 1px;
}
#global-nav > ul > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    padding: 0 2px 8px;
    border-bottom: 3px solid transparent;
    text-align: center;
	color: #333333;
	text-decoration: none;
}
#global-nav > ul > li > a:hover,
#global-nav > ul > li.is-current > a {
    color: #0099ff;

}
#global-nav > ul > li.is-current > a {
    border-bottom-color: #0099ff;
    color: #333333;
}
#global-nav > ul > li .item {
    display: none;
    position: absolute;
    left: 0;
    z-index: 900;
    width: 100%;
    min-width: 980px;
    border-top: 8px solid #ffffff;
    background: #f6f6f6;
}
#global-nav > ul > li .item > .inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 30px 15px;
}
#global-nav > ul > li .item > .inner .title {
    margin: 0 0 20px;
    padding: 0 0 15px;
    border-bottom: 1px solid #0099ff;
    font-size: 2rem;
}
#global-nav > ul > li .item > .inner ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#global-nav > ul > li .item > .inner ul li {
    width: calc((100% - 60px) / 4);
    margin: 0 20px 15px 0;
}
#global-nav > ul > li .item > .inner ul li:nth-of-type(4n) {
    margin-right: 0;
}
#global-nav > ul > li .item > .inner ul li a {
    display: inline-block;
    padding: 0 0 0 16px;
    background: url("../img/icon-arrow-right01-blue01.png") 0 .3em no-repeat;
    background-size: 6px auto;
	color: #333333;
	text-decoration: none;
}

#global-nav > ul > li .item > .inner ul li a:hover{
    color: #0099ff;
	opacity: 1;
}


@media print, screen and (max-width: 860px) {
    #global-nav {
        display: none;
    }
}




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


/* contents基本設定
----------------------------------------------------------*/
#contents {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 20px 50px;
    word-break: break-all;
    font-family: "Meiryo", "Hiragino Kaku Gothic ProN", sans-serif;
    line-height: 1.8;
}


@media print, screen and (max-width: 768px) {
    #contents {
        width: auto;
        padding: 0 20px 40px;
    }
}
@media print, screen and (max-width: 414px) {
    #contents {
        padding: 0 10px 30px;
    }
}




/* メインコンテンツ内での各タグの基本設定
----------------------------------------------------------*/

#contents p {
    margin: 0 0 20px;
}

#contents ul {
    margin: 0 0 20px;
}
#contents ul li {
    padding: 0 0 0 1.0em;
   /* background: url("../img/icon-disc-black01.png") .4em .7em no-repeat;*/
   /* background-size: .15em auto;*/
}
#contents ul.cmn-ul-ast li {
    background: none;
    margin-left: 0.5em;
}
#contents ul.cmn-ul-ast li:before {
    display: inline-block;
    content: "※";
    margin-left: -1.5em;
    padding-right: 0.5em;
}
#contents ol {
    list-style: decimal outside;
    margin: 0 0 20px;
    padding: 0 0 0 1.4em;
}
#contents ol.cmn-ol-lower-roman {
    list-style-type: lower-roman;
}
#contents ol li {}
#contents dl {
    margin: 0 0 20px;
}




#contents table {
    width: 100%;
    margin: 0 0 30px;
}
#contents table tr {}
#contents table tr th {
    padding: 15px 15px 14px;
    border: 1px solid #333333;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    white-space: nowrap;
}
#contents table tr td {
    padding: 15px 30px 14px;
    border: 1px solid #333333;
    background: #ffffff;
}
@media print, screen and (max-width: 764px) {
    #contents table tr th {
        padding: 15px 15px 14px;
    }
    #contents table tr td {
        padding: 15px 20px 14px;
    }
}
@media print, screen and (max-width: 414px) {
    #contents table tr th {
        padding: 15px 10px 14px;
    }
    #contents table tr td {
        padding: 15px 10px 14px;
    }
}





/* メインコンテンツ内で共通で使用される色など
----------------------------------------------------------*/
/* ----- テキスト色 ----- */
#contents .cmn-text-red01 {
    color: #ff0000 !important;
}
#contents .cmn-text-blue01 {
    color: #0099ff !important;
}






/* タイトル
----------------------------------------------------------*/
#contents .cmn-title01 {
    margin: 90px 0 60px ;
    color: #0099ff;
    font-size: 4.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}
#contents .cmn-title01 .caption {
    display: inline-block;
    font-size: 2.2rem;
    font-weight: normal;
    line-height: 1.4;
}
#contents .cmn-title02 {
    margin: 40px 0;
    font-size: 3.8rem;
    text-align: center;
    line-height: 1.2;
}
#contents .cmn-title02 .caption {
    font-size: 2.4rem;
}
#contents .cmn-title02.border-btm {
  padding: 0 0 8px;
  border-bottom: 4px solid #0099ff;
}
#contents .cmn-title03 {
    margin: 25px 0;
    font-size: 2.8rem;
    text-align: center;
    line-height: 1.2;
}
#contents .cmn-title03.border-btm {
  padding: 0 0 8px;
  border-bottom: 4px solid #0099ff;
}
@media print, screen and (max-width: 768px) {
    #contents .cmn-title01 {
        margin: 40px 0 30px;
        font-size: 3.6rem;
    }
    #contents .cmn-title01 .caption {
        margin: 5px 0 0;
        font-size: 2rem;
    }
    #contents .cmn-title02 {
        margin: 30px 0;
        font-size: 3.2rem;
    }
    #contents .cmn-title02 .caption {
        font-size: 2rem;
    }
    #contents .cmn-title03 {
        font-size: 2.4rem;
    }
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-title01 {
        margin: 30px 0;
        font-size: 3rem;
    }
    #contents .cmn-title01 .caption {
        font-size: 1.8rem;
    }
    #contents .cmn-title02 {
        margin: 25px 0;
        font-size: 2.8rem;
    }
    #contents .cmn-title02 .caption {
        font-size: 1.8rem;
    }
    #contents .cmn-title03 {
        font-size: 2.2rem;
    }
}

/**/
#contents .cmn-border-title01 {
    margin: 25px 0;
    padding: 0 0 8px;
    border-bottom: 4px solid #0099ff;
    font-size: 2.6rem;
    text-align: center;
    line-height: 1.4;
}
#contents .cmn-border-title02 {
    margin: 20px 0;
    padding: 0 0 4px;
    border-bottom: 1px solid #0099ff;
    font-weight: bold;
    line-height: 1.5;
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-border-title01 {
        font-size: 2.4rem;
    }
}

/**/
#contents .cmn-number-title01 {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin: 30px 0 10px;
    line-height: 1.4;
}
#contents .cmn-number-title01 .num {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex: 0 0 75px;
    flex: 0 0 75px;
    height: 75px;
    border: 1px solid #0099ff;
    border-radius: 9999px;
    color: #0099ff;
    font-size: 3.6rem;
    font-weight: bold;
}
#contents .cmn-number-title01 .text {
    margin: 0 0 0 30px;
    font-size: 2.6rem;
}
@media print, screen and (max-width: 768px) {
    #contents .cmn-number-title01 .num {
        -webkit-flex: 0 0 55px;
        flex: 0 0 55px;
        height: 55px;
        font-size: 2.5rem;
    }
    #contents .cmn-number-title01 .text {
        margin: 0 0 0 20px;
        font-size: 2.2rem;
    }
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-number-title01 .num {
        -webkit-flex: 0 0 45px;
        flex: 0 0 45px;
        height: 45px;
        font-size: 2.1rem;
    }
    #contents .cmn-number-title01 .text {
        margin: 0 0 0 15px;
        font-size: 1.8rem;
    }
}






/* テキスト
----------------------------------------------------------*/
/*
#contents .cmn-text01 {}
*/



/* リンク
----------------------------------------------------------*/
#contents .cmn-link01,
#contents .cmn-link01:visited {
    color: #333333;
    text-decoration: none;
}
#contents .cmn-link01:hover,
#contents .cmn-link01:focus,
#contents .cmn-link01:active {
    color: #0099ff;
}
#contents .cmn-icon-link01 {
    display: inline-block;
    padding: 0 0 0 36px;
    background: url("../img/icon-circle-arrow-right01-blue01.png") 0 .2em no-repeat;
    background-size: 22px auto;
    text-align: left;
	text-decoration: none;
}
#contents .cmn-icon-link01:hover {
	color: #09f;
}
#contents .cmn-icon-link02 {
    display: inline-block;
    padding: 0 0 0 36px;
    background: url("../img/icon-circle-arrow-down01-blue01.png") 0 .2em no-repeat;
    background-size: 22px auto;
    text-align: left;
    color: #333333;
    text-decoration: none;
    -webkit-transition: all .1s ease-out;
    transition: all .1s ease-out;
}


#contents .cmn-icon-link03 {
    display: inline-block;
    padding: 0 0 0 36px;
    background: url("../img/icon-circle-arrow-right01-blue01.png") 0 .2em no-repeat;
    background-size: 22px auto;
    text-align: left;
	text-decoration: none;
}



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



/* 画像
----------------------------------------------------------*/



/* ボックス・ブロック・セクション
----------------------------------------------------------*/


/**/


/* Youtube埋め込みなどのラッパー */




/* グリッド・カラム
----------------------------------------------------------*/
/**/
#contents .cmn-row01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 30px;
}
#contents .cmn-row01 > .col {
    width: calc((100% - 20px) / 2);
    margin: 0 20px 20px 0;
}
#contents .cmn-row01 > .col:nth-of-type(2n) {
    margin-right: 0;
}
@media print, screen and (max-width: 639px) {
    #contents .cmn-row01 > .col {
        width: 100%;
        margin: 0 0 10px;
    }
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-row01 {
        margin: 0 0 20px;
    }
}

/**/
#contents .cmn-row02 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 30px;
}
#contents .cmn-row02 > .col {
    width: calc((100% - 80px) / 2);
    margin: 0 80px 60px 0;
}
#contents .cmn-row02 > .col:nth-of-type(2n) {
    margin-right: 0;
}
#contents .cmn-row02 > .col > .inner {
    margin: 0 0 20px;
}
@media print, screen and (max-width: 768px) {
    #contents .cmn-row02 {
        padding: 0;
    }
    #contents .cmn-row02 > .col {
        width: 100%;
        margin: 0 0 50px;
    }
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-row02 > .col {
        margin: 0 0 30px;
    }
}


/* リスト
----------------------------------------------------------*/
/**/
#contents .cmn-list01 {}
#contents .cmn-list01 li {
    position: relative;
    padding: 0 0 0 1.2em;
    background: none;
}
#contents .cmn-list01 li:before {
    display: block;
    position: absolute;
    left: 0;
    top: .45em;
    width: 1em;
    line-height: 1;
    content: "＊";
}



/* cmn-num-list01 */
#contents .cmn-num-list01 {}
#contents .cmn-num-list01 li {
  list-style: none;
}
#contents .cmn-num-list01 li .num {
  display: inline-block;
  border-radius: 50%;
  border: 1px solid #333;
  width: 22px;
  height: 22px;
  text-align: center;
  vertical-align: middle;
  margin-right: 28px;
  line-height: 22px;
}
#contents .cmn-num-list01 li .num-02 {
  display: inline-block;
  text-align: center;
  width: 22px;
  height: 22px;
  vertical-align: middle;
  margin-right: 28px;
  line-height: 22px;
}


/* cmn-card-list01 */
#contents .cmn-card-list01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 20px;
}
#contents .cmn-card-list01 > .item {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: calc((100% - 30px) / 4);
    margin: 0 10px 10px 0;
    background: #ffffff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .2);
}
#contents .cmn-card-list01 > .item:hover {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
}
#contents .cmn-card-list01 > .item:nth-of-type(4n) {
    margin-right: 0;
}
#contents .cmn-card-list01 > .item .thumbnail {
    margin: 0;
    min-height: 0%; /* IE11 */
}
#contents .cmn-card-list01 > .item .thumbnail img {
    width: 100%;
}
#contents .cmn-card-list01 > .item .text {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    margin: 0;
    padding: 20px 28px 20px 15px;
    background: url("../img/icon-arrow-right01-black01.png") calc(100% - 12px) 50% no-repeat;
    background-size: 6px auto;
    min-height: 0%; /* IE11 */
	text-decoration: none;
}

#contents .cmn-card-list01 > .item:hover .text {
    background-image: url("../img/icon-arrow-right01-blue01.png");
}
@media print, screen and (max-width: 768px) {
    #contents .cmn-card-list01 {
        font-size: 1.8rem;
    }
    #contents .cmn-card-list01 > .item {
        -webkit-flex: 0 1 calc((100% - 20px) / 2);
        flex: 0 1 calc((100% - 20px) / 2);
        margin: 0 20px 20px 0;
    }
    #contents .cmn-card-list01 > .item:nth-of-type(2n) {
        margin-right: 0;
    }
    #contents .cmn-card-list01 > .item .text {
        padding: 20px 32px 20px 15px;
        background-position-x: calc(100% - 15px);
        background-size-x: 7px;
    }
}
@media print, screen and (max-width: 414px) {
    #contents .cmn-card-list01 {
        font-size: 1.3rem;
    }
    #contents .cmn-card-list01 > .item {
        -webkit-flex: 0 1 calc((100% - 10px) / 2);
        flex: 0 1 calc((100% - 10px) / 2);
        margin: 0 10px 10px 0;
    }
    #contents .cmn-card-list01 > .item .text {
        padding: 10px 22px 10px 10px;
        background-position-x: calc(100% - 10px);
        background-size-x: 5px;
    }
}


/* ナビ
----------------------------------------------------------*/



/* テーブル
----------------------------------------------------------*/
/*
#contents .cmn-table01
*/




/* ====================================================================
 footer
==================================================================== */

/* footer-contact */
#footer-contact {
    /*min-width: 980px;*/
	width: 100%;
    background: #f8f8f8;
}
#footer.hide-footer-contact #footer-contact {
    display: none;
}
#footer-contact > .inner {
    mini-width: 980px;
    margin: 0 auto;
    padding: 50px 20px;
}
#footer-contact > .inner .footer-contact-title {
    margin: 0 0 35px;
    font-size: 2.4rem;
    text-align: center;
}
#footer-contact > .inner .footer-contact-text {
    text-align: center;
    line-height: 1.8;
}
@media print, screen and (max-width: 768px) {
    #footer-contact {
        min-width: 100%;
        margin: 0 0 30px;
    }
    #footer-contact > .inner {
        width: 100%;
        padding: 40px 20px;
    }
    #footer-contact > .inner .footer-contact-title {
        margin: 0 0 20px;
    }
}
@media print, screen and (max-width: 414px) {
    #footer-contact > .inner {
        padding: 40px 10px;
    }
    #footer-contact > .inner .footer-contact-title {
        font-size: 2.2rem;
    }
}


/* ====================================================================
 underlayer
==================================================================== */


/* underlayer category  */
#contents.base-container .c-category-nav01 p a,
#contents.base-container .c-category-nav01 p a:visited {
    color: #0099ff;
}
#contents.base-container .c-category-nav01 p a:hover {
    opacity: .75;
}




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

/* レイアウト関連
--------------------------------------------------------- */
.d-b { display: block !important; }
.d-ib { display: inline-block !important; }
.d-i { display: inline !important; }
.d-n { display: none !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 (max-width: 414px) {
    .d-b-xs { display: block !important; }
    .d-ib-xs { display: inline-block !important; }
    .d-i-xs { display: inline !important; }
    .d-n-xs { display: none !important; }
    .fl-l-xs { float: left !important; }
    .fl-r-xs { float: right !important; }
    .cl-xs { clear: both !important; }
    .cl-l-xs { clear: left !important; }
    .cl-r-xs { clear: right !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .d-b-sm { display: block !important; }
    .d-ib-sm { display: inline-block !important; }
    .d-i-sm { display: inline !important; }
    .d-n-sm { display: none !important; }
    .fl-l-sm { float: left !important; }
    .fl-r-sm { float: right !important; }
    .cl-sm { clear: both !important; }
    .cl-l-sm { clear: left !important; }
    .cl-r-sm { clear: right !important; }
}
@media print, screen and (min-width: 769px) {
    .d-b-md { display: block !important; }
    .d-ib-md { display: inline-block !important; }
    .d-i-md { display: inline !important; }
    .d-n-md { display: none !important; }
    .fl-l-md { float: left !important; }
    .fl-r-md { float: right !important; }
    .cl-md { clear: both !important; }
    .cl-l-md { clear: left !important; }
    .cl-r-md { clear: right !important; }
}



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



/* フォント・テキスト
--------------------------------------------------------- */
/* ----- 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; }
.fs-21 { font-size: 2.1rem !important; }
.fs-22 { font-size: 2.2rem !important; }
.fs-23 { font-size: 2.3rem !important; }
.fs-24 { font-size: 2.4rem !important; }
.fs-25 { font-size: 2.5rem !important; }
.fs-26 { font-size: 2.6rem !important; }
.fs-27 { font-size: 2.7rem !important; }
.fs-28 { font-size: 2.8rem !important; }
.fs-29 { font-size: 2.9rem !important; }
.fs-30 { font-size: 3.0rem !important; }
.fs-31 { font-size: 3.1rem !important; }
.fs-32 { font-size: 3.2rem !important; }
.fs-33 { font-size: 3.3rem !important; }
.fs-34 { font-size: 3.4rem !important; }
.fs-35 { font-size: 3.5rem !important; }
.fs-36 { font-size: 3.6rem !important; }
.fs-37 { font-size: 3.7rem !important; }
.fs-38 { font-size: 3.8rem !important; }
.fs-39 { font-size: 3.9rem !important; }
.fs-40 { font-size: 4.0rem !important; }
@media print, screen and (max-width: 414px) {
    .fs-9-xs { font-size: 0.9rem !important; }
    .fs-10-xs { font-size: 1.0rem !important; }
    .fs-11-xs { font-size: 1.1rem !important; }
    .fs-12-xs { font-size: 1.2rem !important; }
    .fs-13-xs { font-size: 1.3rem !important; }
    .fs-14-xs { font-size: 1.4rem !important; }
    .fs-15-xs { font-size: 1.5rem !important; }
    .fs-16-xs { font-size: 1.6rem !important; }
    .fs-17-xs { font-size: 1.7rem !important; }
    .fs-18-xs { font-size: 1.8rem !important; }
    .fs-19-xs { font-size: 1.9rem !important; }
    .fs-20-xs { font-size: 2.0rem !important; }
    .fs-21-xs { font-size: 2.1rem !important; }
    .fs-22-xs { font-size: 2.2rem !important; }
    .fs-23-xs { font-size: 2.3rem !important; }
    .fs-24-xs { font-size: 2.4rem !important; }
    .fs-25-xs { font-size: 2.5rem !important; }
    .fs-26-xs { font-size: 2.6rem !important; }
    .fs-27-xs { font-size: 2.7rem !important; }
    .fs-28-xs { font-size: 2.8rem !important; }
    .fs-29-xs { font-size: 2.9rem !important; }
    .fs-30-xs { font-size: 3.0rem !important; }
    .fs-31-xs { font-size: 3.1rem !important; }
    .fs-32-xs { font-size: 3.2rem !important; }
    .fs-33-xs { font-size: 3.3rem !important; }
    .fs-34-xs { font-size: 3.4rem !important; }
    .fs-35-xs { font-size: 3.5rem !important; }
    .fs-36-xs { font-size: 3.6rem !important; }
    .fs-37-xs { font-size: 3.7rem !important; }
    .fs-38-xs { font-size: 3.8rem !important; }
    .fs-39-xs { font-size: 3.9rem !important; }
    .fs-40-xs { font-size: 4.0rem !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 769px) {
    .fs-9-sm { font-size: 0.9rem !important; }
    .fs-10-sm { font-size: 1.0rem !important; }
    .fs-11-sm { font-size: 1.1rem !important; }
    .fs-12-sm { font-size: 1.2rem !important; }
    .fs-13-sm { font-size: 1.3rem !important; }
    .fs-14-sm { font-size: 1.4rem !important; }
    .fs-15-sm { font-size: 1.5rem !important; }
    .fs-16-sm { font-size: 1.6rem !important; }
    .fs-17-sm { font-size: 1.7rem !important; }
    .fs-18-sm { font-size: 1.8rem !important; }
    .fs-19-sm { font-size: 1.9rem !important; }
    .fs-20-sm { font-size: 2.0rem !important; }
    .fs-21-sm { font-size: 2.1rem !important; }
    .fs-22-sm { font-size: 2.2rem !important; }
    .fs-23-sm { font-size: 2.3rem !important; }
    .fs-24-sm { font-size: 2.4rem !important; }
    .fs-25-sm { font-size: 2.5rem !important; }
    .fs-26-sm { font-size: 2.6rem !important; }
    .fs-27-sm { font-size: 2.7rem !important; }
    .fs-28-sm { font-size: 2.8rem !important; }
    .fs-29-sm { font-size: 2.9rem !important; }
    .fs-30-sm { font-size: 3.0rem !important; }
    .fs-31-sm { font-size: 3.1rem !important; }
    .fs-32-sm { font-size: 3.2rem !important; }
    .fs-33-sm { font-size: 3.3rem !important; }
    .fs-34-sm { font-size: 3.4rem !important; }
    .fs-35-sm { font-size: 3.5rem !important; }
    .fs-36-sm { font-size: 3.6rem !important; }
    .fs-37-sm { font-size: 3.7rem !important; }
    .fs-38-sm { font-size: 3.8rem !important; }
    .fs-39-sm { font-size: 3.9rem !important; }
    .fs-40-sm { font-size: 4.0rem !important; }
}
@media print, screen and (min-width: 769px) {
    .fs-9-md { font-size: 0.9rem !important; }
    .fs-10-md { font-size: 1.0rem !important; }
    .fs-11-md { font-size: 1.1rem !important; }
    .fs-12-md { font-size: 1.2rem !important; }
    .fs-13-md { font-size: 1.3rem !important; }
    .fs-14-md { font-size: 1.4rem !important; }
    .fs-15-md { font-size: 1.5rem !important; }
    .fs-16-md { font-size: 1.6rem !important; }
    .fs-17-md { font-size: 1.7rem !important; }
    .fs-18-md { font-size: 1.8rem !important; }
    .fs-19-md { font-size: 1.9rem !important; }
    .fs-20-md { font-size: 2.0rem !important; }
    .fs-21-md { font-size: 2.1rem !important; }
    .fs-22-md { font-size: 2.2rem !important; }
    .fs-23-md { font-size: 2.3rem !important; }
    .fs-24-md { font-size: 2.4rem !important; }
    .fs-25-md { font-size: 2.5rem !important; }
    .fs-26-md { font-size: 2.6rem !important; }
    .fs-27-md { font-size: 2.7rem !important; }
    .fs-28-md { font-size: 2.8rem !important; }
    .fs-29-md { font-size: 2.9rem !important; }
    .fs-30-md { font-size: 3.0rem !important; }
    .fs-31-md { font-size: 3.1rem !important; }
    .fs-32-md { font-size: 3.2rem !important; }
    .fs-33-md { font-size: 3.3rem !important; }
    .fs-34-md { font-size: 3.4rem !important; }
    .fs-35-md { font-size: 3.5rem !important; }
    .fs-36-md { font-size: 3.6rem !important; }
    .fs-37-md { font-size: 3.7rem !important; }
    .fs-38-md { font-size: 3.8rem !important; }
    .fs-39-md { font-size: 3.9rem !important; }
    .fs-40-md { font-size: 4.0rem !important; }
}

/* ----- font-weight ----- */
.fw-n { font-weight: normal !important; }
.fw-b { font-weight: bold !important; }
@media print, screen and (max-width: 414px) {
    .fw-n-xs { font-weight: normal !important; }
    .fw-b-xs { font-weight: bold !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .fw-n-sm { font-weight: normal !important; }
    .fw-b-sm { font-weight: bold !important; }
}
@media print, screen and (min-width: 769px) {
    .fw-n-md { font-weight: normal !important; }
    .fw-b-md { font-weight: bold !important; }
}

/* ----- text-decoration ----- */
.td-n { text-decoration: none !important; }
.td-u { text-decoration: underline !important; }
@media print, screen and (max-width: 414px) {
    .td-n-xs { text-decoration: none !important; }
    .td-u-xs { text-decoration: underline !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .td-n-sm { text-decoration: none !important; }
    .td-u-sm { text-decoration: underline !important; }
}
@media print, screen and (min-width: 769px) {
    .td-n-md { text-decoration: none !important; }
    .td-u-md { 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 (max-width: 414px) {
    .ta-l-xs { text-align: left !important; }
    .ta-c-xs { text-align: center !important; }
    .ta-r-xs { text-align: right !important; }
    .ta-j-xs { text-align: justify !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .ta-l-sm { text-align: left !important; }
    .ta-c-sm { text-align: center !important; }
    .ta-r-sm { text-align: right !important; }
    .ta-j-sm { text-align: justify !important; }
}
@media print, screen and (min-width: 769px) {
    .ta-l-md { text-align: left !important; }
    .ta-c-md { text-align: center !important; }
    .ta-r-md { text-align: right !important; }
    .ta-j-md { 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 (max-width: 414px) {
    .va-t-xs { vertical-align: top !important; }
    .va-m-xs { vertical-align: middle !important; }
    .va-b-xs { vertical-align: bottom !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .va-t-sm { vertical-align: top !important; }
    .va-m-sm { vertical-align: middle !important; }
    .va-b-sm { vertical-align: bottom !important; }
}
@media print, screen and (min-width: 769px) {
    .va-t-md { vertical-align: top !important; }
    .va-m-md { vertical-align: middle !important; }
    .va-b-md { vertical-align: bottom !important; }
}

/* ----- white-space ----- */
.ws-n { white-space: normal !important; }
.ws-nw { white-space: nowrap !important; }
@media print, screen and (max-width: 414px) {
    .ws-n-xs { white-space: normal !important; }
    .ws-nw-xs { white-space: nowrap !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .ws-n-sm { white-space: normal !important; }
    .ws-nw-sm { white-space: nowrap !important; }
}
@media print, screen and (min-width: 769px) {
    .ws-n-md { white-space: normal !important; }
    .ws-nw-md { 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 (max-width: 414px) {
    .lh-10-xs { line-height: 1.0 !important; }
    .lh-11-xs { line-height: 1.1 !important; }
    .lh-12-xs { line-height: 1.2 !important; }
    .lh-13-xs { line-height: 1.3 !important; }
    .lh-14-xs { line-height: 1.4 !important; }
    .lh-15-xs { line-height: 1.5 !important; }
    .lh-16-xs { line-height: 1.6 !important; }
    .lh-17-xs { line-height: 1.7 !important; }
    .lh-18-xs { line-height: 1.8 !important; }
    .lh-19-xs { line-height: 1.9 !important; }
    .lh-20-xs { line-height: 2.0 !important; }
}
@media print, screen and (min-width: 415px) and (max-width: 768px) {
    .lh-10-sm { line-height: 1.0 !important; }
    .lh-11-sm { line-height: 1.1 !important; }
    .lh-12-sm { line-height: 1.2 !important; }
    .lh-13-sm { line-height: 1.3 !important; }
    .lh-14-sm { line-height: 1.4 !important; }
    .lh-15-sm { line-height: 1.5 !important; }
    .lh-16-sm { line-height: 1.6 !important; }
    .lh-17-sm { line-height: 1.7 !important; }
    .lh-18-sm { line-height: 1.8 !important; }
    .lh-19-sm { line-height: 1.9 !important; }
    .lh-20-sm { line-height: 2.0 !important; }
}
@media print, screen and (min-width: 769px) {
    .lh-10-md { line-height: 1.0 !important; }
    .lh-11-md { line-height: 1.1 !important; }
    .lh-12-md { line-height: 1.2 !important; }
    .lh-13-md { line-height: 1.3 !important; }
    .lh-14-md { line-height: 1.4 !important; }
    .lh-15-md { line-height: 1.5 !important; }
    .lh-16-md { line-height: 1.6 !important; }
    .lh-17-md { line-height: 1.7 !important; }
    .lh-18-md { line-height: 1.8 !important; }
    .lh-19-md { line-height: 1.9 !important; }
    .lh-20-md { line-height: 2.0 !important; }
}
