@charset "UTF-8";
/*--------------------------------------------------------------------------------
▼ utility.cssは全てのサイトに共通して使用可能なcss設定です ▼
---------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------
 文字の大きさ
------------------------------------------------------------------*/
.fs07 { font-size: 0.7rem !important; }
.fs08 { font-size: 0.8rem !important; }
.fs09 { font-size: 0.9rem !important; }
.fs10 { font-size: 1.0rem !important; }
.fs11 { font-size: 1.1rem !important; }
.fs12 { font-size: 1.2rem !important; }
.fs13 { font-size: 1.3rem !important; }
.fs14 { font-size: 1.4rem !important; }
.fs15 { font-size: 1.5rem !important; }
.fs16 { font-size: 1.6rem !important; }
.fs17 { font-size: 1.7rem !important; }
.fs18 { font-size: 1.8rem !important; }
.fs19 { font-size: 1.9rem !important; }
.fs20 { font-size: 2.0rem !important; }
.fs21 { font-size: 2.1rem !important; }
.fs22 { font-size: 2.2rem !important; }
.fs23 { font-size: 2.3rem !important; }
.fs24 { font-size: 2.4rem !important; }
.fs25 { font-size: 2.5rem !important; }
.fs26 { font-size: 2.6rem !important; }
.fs27 { font-size: 2.7rem !important; }
.fs28 { font-size: 2.8rem !important; }
.fs29 { font-size: 2.9rem !important; }
.fs30 { font-size: 3.0rem !important; }

/*-----------------------------------------------------------------
 文字の太さ
------------------------------------------------------------------*/
.b { font-weight: bold !important; }/*太字*/
.normal { font-weight: normal !important; }/*通常の太さ*/
.lighter { font-weight: lighter !important; }/*細字*/

/*-----------------------------------------------------------------
 文字の色
------------------------------------------------------------------*/
.text-gray { color: #bbb !important; }
.text-blue { color: #3993D4 !important; }
.text-red { color: #D55858 !important; }
.text-green { color: #95CB23 !important; }
.text-black { color: #192538 !important; }
.text-white { color: #fff !important; }
.text-orange { color: #F5760F !important; }
.text-purple { color: #C49DD2 !important; }
.text-pink { color: #EF37A4 !important; }
.text-yellow { color: #E8EC1E !important; }
.text-teal { color: #58BED5 !important; }

/*-----------------------------------------------------------------
 文字の位置
------------------------------------------------------------------*/
/*縦の位置*/
.text-top { vertical-align: top !important; }/*上*/
.text-middle { vertical-align: middle !important; }/*中央*/
.text-bottom { vertical-align: bottom !important; }/*下*/

/*横の位置*/
.text-left { text-align: left !important; }/*左*/
.text-center { text-align: center !important; }/*中央*/
.text-right { text-align: right !important; }/*右*/

/*-----------------------------------------------------------------
 文字の装飾
------------------------------------------------------------------*/
.ita { font-style: italic;}/*イタリック体*/
.ul { text-decoration: underline; }/*下線を引く*/
.ul-none { text-decoration: none; }/*下線を消す*/
.del { text-decoration:line-through; }/*取消線を引く*/
.shadow-white { text-shadow: 1px 1px 1px #fff; }/*白影*/
.shadow-black { text-shadow: 0px 0px 8px #192538; }/*黒影*/

/* 字下げ */
.indent { text-indent: 1rem; }
.indent2 { text-indent: 2rem; }
.indent3 { text-indent: 3rem; }
.indent4 { text-indent: 4rem; }
.indent5 { text-indent: 5rem; }

/* 改行 */
.br { margin-top: 1rem; }
.br2 { margin-top: 2rem; }
.br3 { margin-top: 3rem; }

/*-----------------------------------------------------------------
 配置
------------------------------------------------------------------*/
/*右寄せ*/
.pull-right { float: right; }

/*左寄せ*/
.pull-left { float: left; }

/*中央寄せ*/
.put-center { margin: 0 auto !important; }

/*回り込み解除*/
.clearfix:after {
content: " ";
display: block;
clear: both;
height: 0;
visibility: hidden;
font-size: 0;
}

/*回り込み解除*/
.clear { clear: both !important; }

/*-----------------------------------------------------------------
 flex
------------------------------------------------------------------*/
/* flex */
.flex {
-js-display: flex;/*flexibility.js*/
display: -ms-flexbox;/*--- IE10用 ---*/
display: -webkit-box;/*--- Androidブラウザ用 ---*/
display: -webkit-flex;/*--- safari用 ---*/
display: flex !important;
position: relative;
}

/* flex複数行 */
.flex.wrap {
-ms-flex-wrap: wrap;/*--- IE10用 ---*/
/* Androidブラウザは対応していないので指定不可 */
-webkit-flex-wrap: wrap;/*--- safari用 ---*/
flex-wrap: wrap !important;
}

/* flex横軸 */
.flex.yoko-between {
-ms-flex-pack: justify;/*--- IE10用 ---*/
-webkit-box-pack: justify;/*--- Androidブラウザ用 ---*/
-webkit-justify-content: space-between;/*--- safari用 ---*/
justify-content: space-between !important;
}

.flex.yoko-center {
-ms-flex-pack: center;/*--- IE10用 ---*/
-webkit-box-pack: center;/*--- Androidブラウザ用 ---*/
-webkit-justify-content: center;/*--- safari用 ---*/
justify-content: center !important;
}

.flex.yoko-end {
-ms-flex-pack: end;/*--- IE10用 ---*/
-webkit-box-pack: end;/*--- Androidブラウザ用 ---*/
-webkit-justify-content: flex-end;/*--- safari用 ---*/
justify-content: flex-end !important;
}

/* flex縦軸 */
.flex.tate-center {
-ms-flex-align: center;/*--- IE10用 ---*/
-webkit-box-align: center;/*--- Androidブラウザ用 ---*/
-webkit-align-items: center;/*--- safari用 ---*/
align-items: center !important;
}

/* flex-item */
.flex-item {
width: 100%;
position: relative;
display: block;
}

.flex-item.flex-item-left {
margin-right: 10px;
}

.flex-item.flex-item-right {
margin-left: 10px;
}

/* flex（2列） */
.flex.flex-col-2 {
-webkit-box-pack: justify;/*--- Androidブラウザ用 ---*/
-ms-flex-pack: justify;/*--- IE10用 ---*/
-webkit-justify-content: space-between;/*--- safari用 ---*/
justify-content: space-between;
}

.flex.flex-col-2 .flex-item {
width: 49%;
}

/* flex（3列） */
.flex.flex-col-3 .flex-item {
margin-right: 2%;
width: 32%;
}

.flex.flex-col-3 .flex-item:nth-child(3) {
margin-right: 0;
}

/* flex（4列） */
.flex.flex-col-4 .flex-item {
margin-right: 1%;
width: 24.25%;
}

.flex.flex-col-4 .flex-item:nth-child(4) {
margin-right: 0;
}

/*-----------------------------------------------------------------
 margin
------------------------------------------------------------------*/
.mn { margin: 0 !important; }

.m10 { margin: 10px !important; }
.m20 { margin: 20px !important; }
.m30 { margin: 30px !important; }
.m40 { margin: 40px !important; }
.m50 { margin: 50px !important; }

.mtn { margin-top: 0px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }

.mbn { margin-bottom: 0px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }

.mh10 {
margin-right: 10px !important;
margin-left: 10px !important;
}
.mh20 {
margin-right: 20px !important;
margin-left: 20px !important;
}
.mh30 {
margin-right: 30px !important;
margin-left: 30px !important;
}

/*-----------------------------------------------------------------
 padding
------------------------------------------------------------------*/
.pn { padding: 0 !important; }

.p10 { padding: 10px !important; }
.p20 { padding: 20px !important; }
.p30 { padding: 30px !important; }
.p40 { padding: 40px !important; }
.p50 { padding: 50px !important; }

.ptn { padding-top: 0px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }

.pbn { padding-bottom: 0px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.ph10 {
padding-right: 10px !important;
padding-left: 10px !important;
}
.ph20 {
padding-right: 20px !important;
padding-left: 20px !important;
}
.ph30 {
padding-right: 30px !important;
padding-left: 30px !important;
}

/*-----------------------------------------------------------------
 幅
------------------------------------------------------------------*/
.mw100 { max-width: 100%;}
.mw95 { max-width: 95%;}
.mw90 { max-width: 90%;}
.mw85 { max-width: 85%;}
.mw80 { max-width: 80%;}
.mw75 { max-width: 75%;}
.mw70 { max-width: 70%;}
.mw65 { max-width: 65%;}
.mw60 { max-width: 60%;}
.mw55 { max-width: 55%;}
.mw50 { max-width: 50%;}

/*-----------------------------------------------------------------
 その他
------------------------------------------------------------------*/
/*リストのアイコンをなくす*/
.no-i { list-style-type: none !important; }

/*非表示・ブロック化・インライン化*/
.hidden { display: none !important; }
.block { display: block !important; }
.inline { display: inline !important; }
.inline-block { display: inline-block !important; }

/*背景の色*/
.bg-white { background: #fff !important; }

/*枠線*/
.bo1-white { border: 1px solid #fff !important; }
.bo2-white { border: 2px solid #fff !important; }
.bo3-white { border: 3px solid #fff !important; }