/*!-----------------------------------------
// Thema共通のユーティリティ
------------------------------------------------------------------------------*/

/*!-----------------------------------------
/* コンテンツ幅

// 標準幅　: 　　	.u-container
// スリム幅:  　　.u-slimContainer
// フルサイズ幅:　.u-fullContainer
//スリック幅： .u-slickContainer
--------------------------------------------- */
.u-container {
margin: 0 auto;
text-align: center;
width: min(96%, 1024px);
}

.u-slimContainer {
margin: 0 auto;
text-align: center;
width: min(96%, 840px);
}

.u-fullContainer {
margin: 0 auto;
text-align: center;
width: 100%;
}

/* スライダーslick(jquery) を使用した時のみ使用する
// 2カラムデザインだと画面いっぱいにスライダーが表示されてしまうための調整クラス
------------------------------------------------ */
.u-slickContainer{
width: 80vw;
}
@media (max-width: 767px) {
.u-slickContainer{
margin: 0 auto;
text-align: center;
width: 100vw;
}
}



/*!-----------------------------------------
/* 余白
// 1と2を優先で使う
// １. 余白padding上　: 　　	.u-ptS　.u-ptM .u-ptL .u-ptLL
// 2. 余白margin上　: 　　	.u-mtS　.u-mtM .u-mtL .u-mtLL
// 3. .u-mt0 〜 u-mt200
--------------------------------------------- */
.u-ptS {
padding-top: 15px !important;
}

.u-ptM {
padding-top: 30px !important;
}

.u-ptL {
padding-top: 60px !important;
}

.u-ptLL {
padding-top: 100px !important;
}

.u-mtS {
margin-top: 15px !important;
}

.u-mtM {
margin-top: 30px !important;
}

.u-mtL {
margin-top: 60px !important;
}

.u-mtLL {
margin-top: 100px !important;
}


@media (max-width: 767px) {
.u-ptS {
padding-top: 10px !important;
}

.u-ptM {
padding-top: 20px !important;
}

.u-ptL {
padding-top: 30px !important;
}

.u-ptLL {
padding-top: 50px !important;
}

.u-mtS {
margin-top: 10px !important;
}

.u-mtM {
margin-top: 20px !important;
}

.u-mtL {
margin-top: 30px !important;
}

.u-mtLL {
margin-top: 50px !important;
}
}

.u-pt0 {
padding-top: 0 !important;
}

.u-mt0 {
margin-top: 0 !important;
}

.u-mt5 {
margin-top: 5px !important;
}

.u-mt10 {
margin-top: 10px !important;
}

.u-mt15 {
margin-top: 15px !important;
}

.u-mt20 {
margin-top: 20px !important;
}

.u-mt25 {
margin-top: 25px !important;
}

.u-mt30 {
margin-top: 30px !important;
}

.u-mt40 {
margin-top: 40px !important;
}

.u-mt50 {
margin-top: 50px !important;
}

.u-mt60 {
margin-top: 60px !important;
}

.u-mt70 {
margin-top: 70px !important;
}

.u-mt80 {
margin-top: 80px !important;
}

.u-mt90 {
margin-top: 90px !important;
}

.u-mt100 {
margin-top: 100px !important;
}

.u-mt120 {
margin-top: 120px !important;
}

.u-mt140 {
margin-top: 140px !important;
}

.u-mt150 {
margin-top: 150px !important;
}

.u-mt160 {
margin-top: 160px !important;
}

.u-mt180 {
margin-top: 180px !important;
}

.u-mt200 {
margin-top: 200px !important;
}

.u-mt300 {
margin-top: 300px !important;
}

/* テキスト揃え
--------------------------------------------- */
.u-left {
text-align: left !important;
}

.u-center {
text-align: center !important;
}

.u-right {
text-align: right !important;
}


/*!-----------------------------------------
/* PCとスマホで表示切り替え
// PCのみ表示：　.u-pcOnly
// スマホのみ表示：　.u-spnOnly
--------------------------------------------- */

/* PCとスマホで表示切り替え
--------------------------------------------- */

/* PCのみ適応 */
@media (min-width: 768px) {
.u-spnOnly {
display: none !important;
}
}

/* スマホのみ適応 */
@media (max-width: 767px) {
.u-pcOnly {
display: none !important;
}
}



/*!-----------------------------------------
/* 各ページのタイトル
--------------------------------------------- */

.u-pageTitle {
font-size: min(7vw, 32px);
line-height: 1.6;
font-weight:500;
font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif !important;
}

.u-pageTitle span{
display: block;
font-size: min(3.7vw, 16px);
line-height: 1.6;
font-family: "Arial", "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic Pro", "YuGothic", "Yu Gothic Medium", "Meiryo", sans-serif !important;
font-weight:400;
}