/* ===================================================================
BASE
=================================================================== */
html {
	font-size: 62.5%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	letter-spacing: 0.1em;
	line-height: 1.7;
    color: #313131;
	scroll-behavior: smooth;}
body {
   position: relative;
   font-size: 16px;
   font-size: 1.6rem;
   overflow-x: hidden;
}
body{min-width:1092px;}
@media all and (-ms-high-contrast:none){
body{min-width: auto;}
}
@media screen and (max-width: 1092px){
body{min-width: 100%;}
}
@media screen and (max-width: 768px) {
body {min-width: initial;}
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {margin: 0;padding: 0;}


@font-face {font-family: "Yu Gothic";src: local("Yu Gothic Medium");font-weight: 100;}
@font-face {font-family: "Yu Gothic";src: local("Yu Gothic Medium");font-weight: 200;}
@font-face {font-family: "Yu Gothic";src: local("Yu Gothic Medium");font-weight: 300;}
@font-face {font-family: "Yu Gothic";src: local("Yu Gothic Medium");font-weight: 400;}
@font-face {font-family: "Yu Gothic";src: local("Yu Gothic Bold");font-weight: bold;}
@font-face {font-family: "Helvetica Neue";src: local("Helvetica Neue Regular");font-weight: 100;}
@font-face {font-family: "Helvetica Neue";src: local("Helvetica Neue Regular");font-weight: 200;}

body {font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-style: normal;}
.min {font-family: 'Noto Serif JP' , YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;}

a, a:active {text-decoration: underline;color: #dd4435;overflow: hidden;outline: none;}
a:hover {color: #dd4435;text-decoration: none;}
a:focus {outline: thin dotted;}
a:hover, a:active {outline: 0;}
	
.mo a:hover {opacity:0.9;filter: alpha(opacity=90);-ms-filter: "alpha( opacity=90 )";}

abbr[title] {border-bottom: 1px dotted;}
b, strong {font-weight: bold;}
dfn {font-style: italic;}
pre {white-space: pre;white-space: pre-wrap;word-wrap: break-word;}
ul, ol {margin:0;padding:0;}
nav ul, nav ol {list-style: none;}
img {border: 0;vertical-align: bottom;-ms-interpolation-mode: bicubic;}
svg:not(:root) {overflow: hidden;}
form {margin: 0;}
button, input, select, textarea {font-size: 100%;margin: 0;vertical-align: baseline;*vertical-align: middle;}
button, input {line-height: normal;*overflow: visible;}
button, input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer;-webkit-appearance: button;}
input[type="checkbox"], input[type="radio"] {box-sizing: border-box;}
input[type="search"] {-webkit-appearance: textfield;-moz-box-sizing: content-box;-webkit-box-sizing: content-box;box-sizing: content-box;}
input[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}
button::-moz-focus-inner, input::-moz-focus-inner {border: 0;padding: 0;}
table {border-collapse: collapse;border-spacing: 0;}
address, caption, cite, code, dfn, em, strong, th, var {font-style: normal;}
h1, h2, h3, h4, h5, h6 {font-size: 100%;font-weight: bold;}
img, abbr, acronym, fieldset {border: 0;}
li {list-style:none;}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {display: block;}
audio[controls], canvas, video {display: inline-block;*display: inline;zoom: 1;}

.center {text-align: center!important;}
.left {text-align: left!important;}
.right {text-align: right!important;}

@media screen and (max-width: 768px) {
.sp_center {text-align: center!important;width: 100%;}
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;}
	
/* Utility  -----------------------------------------------------------------------*/
.mb00 {padding-bottom: 0;}
.mb05 {margin-bottom:5px;}
.mb10 {margin-bottom:10px;}
.mb12 {margin-bottom:12px;}
.mb15 {margin-bottom:15px;}
.mb20 {margin-bottom:20px;}
.mb25 {margin-bottom:25px;}
.mb30 {margin-bottom:30px;}
.mb35 {margin-bottom:35px;}
.mb40 {margin-bottom:40px;}
.mb50 {margin-bottom:50px;}
.mb60 {margin-bottom:60px;}
.mb70 {margin-bottom:70px;}
.mb80 {margin-bottom:80px;}
.mb90 {margin-bottom:90px;}
.mb100 {margin-bottom:100px;}
.mb110 {margin-bottom:110px;}

@media screen and (max-width: 768px) {
.mb05 {margin-bottom:5px;}
.mb10 {margin-bottom:6px;}
.mb12 {margin-bottom:7px;}
.mb15 {margin-bottom:8px;}
.mb20 {margin-bottom:12px;}
.mb25 {margin-bottom:13px;}
.mb30 {margin-bottom:16px;}
.mb35 {margin-bottom:18px;}
.mb40 {margin-bottom:20px;}
.mb50 {margin-bottom:27px;}
.mb60 {margin-bottom:33px;}
.mb70 {margin-bottom:35px;}
.mb80 {margin-bottom:40px;}
.mb90 {margin-bottom:40px;}
.mb100 {margin-bottom:40px;}
.mb110 {margin-bottom:45px;}
}

.ml05 {margin-left:5px;}
.ml10 {margin-left:10px;}
.ml15 {margin-left:15px;}
.ml20 {margin-left:20px;}
.ml30 {margin-left:30px;}
.ml40 {margin-left:40px;}
.ml50 {margin-left:50px;}
.ml60 {margin-left:60px;}
.mr05 {margin-right:5px;}
.mr10 {margin-right:10px;}
.mr15 {margin-right:15px;}
.mr20 {margin-right:20px;}
.mr30 {margin-right:30px;}
.mr40 {margin-right:40px;}
.mr50 {margin-right:50px;}
.mr60 {margin-right:60px;}
.mt30 {margin-top: 30px;}
.pt05 {padding-top:5px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt20 {padding-top:20px;}
.pt30 {padding-top:30px;}
.pt40 {padding-top:40px;}
.pt50 {padding-top:50px;}
.pt60 {padding-top:60px;}
.pb05 {padding-bottom:5px;}
.pb10 {padding-bottom:10px;}
.pb15 {padding-bottom:15px;}
.pb20 {padding-bottom:20px;}
.pb30 {padding-bottom:30px;}
.pb40 {padding-bottom:40px;}
.pl05 {padding-left:5px;}
.pl10 {padding-left:10px;}
.pl15 {padding-left:15px;}
.pl20 {padding-left:20px;}
.pl30 {padding-left:30px;}
.pl40 {padding-left:40px;}
.pr05 {padding-right:5px;}
.pr10 {padding-right:10px;}
.pr15 {padding-right:15px;}
.pr20 {padding-right:20px;}
.pr30 {padding-right:30px;}
.pr40 {padding-right:40px;}
.txt_l, td.txt_l, .txt_l td {text-align:left;}
.txt_r, td.txt_r, .txt_r td {text-align:right;}
.txt_c, td.txt_c, .txt_c td {text-align:center;}
.valign_t, td.valign_t, .valign_t td {vertical-align:top;}
.valign_m, td.valign_m, .valign_m td {vertical-align:middle;}
.valign_b, td.valign_b, .valign_b td {vertical-align:bottom;}
.ls0 {letter-spacing: 0em;}

/*テキストなど  ------------------------------------------------------------------*/
.bold {font-weight: bold;}
.nobold {font-weight: normal;}
.grey {color: #707070;}
.red {color: #dd4435;}
.beije {color: #daae38;}
.green {color: #83b900;}
.black {color: #222;}
.fw500 {font-weight: 500;}
.txt12 {font-size: 12px;font-size: 1.2rem;}
.txt14 {font-size: 14px;font-size: 1.4rem;}
.txt14 {font-size: 15px;font-size: 1.5rem;}
.txt16 {font-size: 16px;font-size: 1.6rem;}
.txt18 {font-size: 18px;font-size: 1.8rem;}
.txt20 {font-size: 20px;font-size: 2.0rem;}
.txt22 {font-size: 22px;font-size: 2.2rem;}
.txt24 {font-size: 24px;font-size: 2.4rem;}
.txt26 {font-size: 26px;font-size: 2.6rem;}
.txt28 {font-size: 28px;font-size: 2.8rem;}
.txt30 {font-size: 30px;font-size: 3.0rem;}
.txt36 {font-size: 36px;font-size: 3.6rem;}
.txt40 {font-size: 40px;font-size: 4.0rem;}
.txt42 {font-size: 42px;font-size: 4.2rem;}
.txt48 {font-size: 48px;font-size: 4.8rem;}

@media screen and (max-width: 768px) {
.txt12 {font-size: 12px;font-size: 1.2rem;}
.txt14 {font-size: 14px;font-size: 1.4rem;}
.txt16 {font-size: 15px;font-size: 1.5rem;}
.txt18 {font-size: 16px;font-size: 1.6rem;}
.txt20 {font-size: 18px;font-size: 1.8rem;}
.txt22 {font-size: 20px;font-size: 2.2rem;}
.txt24 {font-size: 22px;font-size: 2.2rem;}
.txt26 {font-size: 22px;font-size: 2.2rem;}
.txt28 {font-size: 24px;font-size: 2.4rem;}
.txt30 {font-size: 24px;font-size: 2.4rem;}
.txt36 {font-size: 24px;font-size: 2.4rem;}
.txt40 {font-size: 26px;font-size: 2.6rem;}
.txt42 {font-size: 28px;font-size: 2.8rem;}
.txt48 {font-size: 32px;font-size: 3.0rem;}
}

/* --------------------------------------------------------------------------------------
 float解除
--------------------------------------------------------------------------------------- */
.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden;font-size: 0.1em; }
.clearfix { display:inline-block; }
* html .clearfix { height:1%; }
.clearfix { display:block; }
*{zoom:1;}