﻿@charset "utf-8";

body,h1,h2,h3,h4,h5,h6,div,p,ul,ol,li,dl,dt,dd,form,input,textarea,pre {margin: 0;padding: 0;}
h1,h2,h3,h4,h5,h6 {font-weight: normal;}
header,footer,article,aside,section {display: block;}
ul,li {list-style-type: none;}
table,img {border: 0;}
hr {display: none;clear: both;}
em {font-style: normal;}
address {font-style: normal;}

* {box-sizing: border-box;}
*:before,*:after {line-height: 1.0;letter-spacing: 0;}

input,textarea,select,button {font-family: inherit; font-size: inherit;}
input,button {outline: 0;}
label,button {cursor: pointer;}
input:focus, select:focus, textarea:focus { border-color: #529AEB;box-shadow : 0px 0px 3px rgba(82, 154, 235, 0.4);}

/*IEとFirefoxでselectの矢印を消すとき*/
select {
    text-indent: 0.01px;
    text-overflow: '';
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select::-ms-expand {display: none;}

/* Firefox */
input::-moz-focus-inner,
button::-moz-focus-inner {border: 0;}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}

/*select { border: solid 1px #D6D6D6; padding:0.6em; padding-right: 30px; min-width:60px; position:relative; background:url(../img/common/icon_select.svg) no-repeat right 5px center #fff; background-size:16px 16px; font-size:1.3rem;}
select:disabled { background-color:rgba(188,188,188, 0.8); opacity: 0.6;}*/

::-webkit-input-placeholder {color: #8F8F8F;}
:-ms-input-placeholder {color: #8F8F8F;}
::placeholder {color: #8F8F8F}

img {vertical-align: top; /*-webkit-backface-visibility: hidden; backface-visibility:hidden;*/}
object {pointer-events: none;}


body {
    /*スマホで見たとき文字が大きくなるのを防ぐ*/
    -webkit-text-size-adjust: 100%;
}

/*ラジオボタン*/
.radio input[type="radio"] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    overflow: hidden;
    padding: 0;
    clip: rect(0, 0, 0, 0);
}
.radio label {
    display: block;
    position: relative;
    padding-left: 24px;
    margin-bottom: 0.4em;
}
.radio label:before,
.radio label:after {
    content: "";
    position: absolute;
    font-size: 0;
    display: inline-block;
    border-radius: 50%;
    transition: transform .2s ease;
}
.radio label:before {
    top: 4px;
    left: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #999;
}
.radio label:after {
    top: 8px;
    left: 4px;
    width: 10px;
    height: 10px;
    background-color: transparent;
    transform: scale(0);
}
.radio input[type="radio"]:focus + label:before { border-color: #529AEB; box-shadow : 0px 0px 3px rgba(82, 154, 235, 0.4);}
.radio input[type="radio"]:checked+label:after {
    background-color: #FF9D00;
    transform: scale(1);
}

/*チェックボックス*/
.checkbox input[type="checkbox"] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    overflow: hidden;
    padding: 0;
    clip: rect(0, 0, 0, 0);
}
.checkbox label {
    display: block;
    position: relative;
    padding: 6px 0 6px 25px;
}
.checkbox label:before,
.checkbox label:after {
    content: "";
    position: absolute;
    display: inline-block;
    transition: transform .2s ease;
}
.checkbox label:before {
    top: 10px;
    left: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #999;
    border-radius: 3px;
}
.checkbox label:after {
    top: 11px;
    left: 5px;
    width: 6px;
    height: 16px;
    margin-top: -5.5px;
    border-right: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-radius: 1.5px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: border-bottom-color, border-right-color .2s ease;
}
.checkbox input[type="checkbox"]:focus + label:before { border-color: #529AEB; box-shadow : 0px 0px 3px rgba(82, 154, 235, 0.4);}
.checkbox input[type="checkbox"]:checked+label:after {
    border-color: #FF9D00;
}


/* --------------------
		clear
-------------------- */
.clearfix:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    font-size: 0;
    line-height: 0;
}
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}
.clear {
    clear: both;
    font-size: 0;
    line-height: 0;
    padding: 0;
    margin: 0;
}
.clearB {clear: both;}


/* --------------------
		float
-------------------- */
.floatR {float: right;}
.floatL {float: left;}

/* --------------------
		link
-------------------- */
a {
    text-decoration: underline;
    verflow: hidden;
    outline: none;
    /*-webkit-tap-highlight-color: rgba(163,14,8,0.2);
	tap-highlight-color: rgba(163,14,8,0.2);*/
}
a:hover {text-decoration: none;}
a:active {text-decoration: none;}
*:focus {outline: none;}
@media screen and ( min-width:800px ){
  .fade {
      transition: opacity 0.2s ease-out;
      -webkit-backface-visibility:hidden; backface-visibility:hidden;
  }
  .fade:hover {opacity: 0.8;}
}
.linkNon { color: inherit; text-decoration: none;}
.linkNon a { color: inherit; text-decoration: none;}

/* --------------------
		common
-------------------- */
.w100 {width: 100%;}
.nowrap {display: inline-block;white-space: nowrap;}
.alignR {text-align: right;}
.alignC {text-align: center;}

.kome { padding-left: 1em; text-indent: -1em; line-height: 1.5;}
.komeList li { padding-left: 1em; text-indent: -1em; line-height: 1.5; margin-top: 0.4em;}
.dotList li { padding-left: 1em; position: relative; line-height: 1.5; margin-top: 0.4em;}
.dotList li:before { content: ""; line-height: 0; width: 3px; height: 3px; background: rgba(0,0,0,0.7); display: block; border-radius: 50%; position: absolute; left: 0.3em; top: 0.7em; transform: translate(-50%, -50%);}

.kome .nowrap, .komeList li .nowrap, .dotList li .nowrap { text-indent: 0;}


/* --------------------
		font size
-------------------- */
.fz10 {font-size: 1.0rem;}
.fz11 {font-size: 1.1rem;}
.fz12 {font-size: 1.2rem;}
.fz13 {font-size: 1.3rem;}
.fz14 {font-size: 1.4rem;}
.fz15 {font-size: 1.5rem;}
.fz16 {font-size: 1.6rem;}
.fz17 {font-size: 1.7rem;}
.fz18 {font-size: 1.8rem;}

.lh15 {line-height: 1.5;}
.lh16 {line-height: 1.6;}
.lh17 {line-height: 1.7;}
.lh18 {line-height: 1.8;}
.lh19 {line-height: 1.9;}
.lh20 {line-height: 2.0;}


/* --------------------
		margin
-------------------- */
.mrgB05 {margin-bottom: 5px;}
.mrgB10 {margin-bottom: 10px;}
.mrgB15 {margin-bottom: 15px;}
.mrgB20 {margin-bottom: 20px;}
.mrgB25 {margin-bottom: 25px;}
.mrgB30 {margin-bottom: 30px;}
.mrgB35 {margin-bottom: 35px;}
.mrgB40 {margin-bottom: 40px;}
.mrgB45 {margin-bottom: 45px;}
.mrgB50 {margin-bottom: 50px;}
.mrgB55 {margin-bottom: 55px;}
.mrgB60 {margin-bottom: 60px;}
.mrgB65 {margin-bottom: 65px;}
.mrgB70 {margin-bottom: 70px;}
.mrgB75 {margin-bottom: 75px;}
.mrgB80 {margin-bottom: 80px;}
.mrgB85 {margin-bottom: 85px;}
.mrgB90 {margin-bottom: 90px;}

.mB05em { margin-bottom: 0.5em;}
.mB1em   { margin-bottom: 1em;}
.mB15em { margin-bottom: 1.5em;}
.mB2em   { margin-bottom: 2em;}
.mB25em { margin-bottom: 2.5em;}
.mB3em   { margin-bottom: 3em;}
.mB4em   { margin-bottom: 4em;}

.mT1em { margin-top: 1em;}
.mT15em { margin-top: 1.5em;}
.mT2em { margin-top: 2em;}



/* --------------------
		padding
-------------------- */
.padB05 {padding-bottom: 5px;}
.padB10 {padding-bottom: 10px;}
.padB15 {padding-bottom: 15px;}
.padB20 {padding-bottom: 20px;}
.padB25 {padding-bottom: 25px;}
.padB30 {padding-bottom: 20px;}
.padB35 {padding-bottom: 35px;}
.padB40 {padding-bottom: 45px;}
.padB50 {padding-bottom: 50px;}
.padB55 {padding-bottom: 55px;}
.padB60 {padding-bottom: 60px;}
.padB65 {padding-bottom: 65px;}
.padB70 {padding-bottom: 70px;}
.padB75 {padding-bottom: 75px;}
.padB80 {padding-bottom: 80px;}
.padB85 {padding-bottom: 85px;}
.padB90 {padding-bottom: 90px;}

.pT05em { padding-top: .5em;}
.pT1em { padding-top: 1em;}
.pT15em { padding-top: 1.5em;}

