@charset "utf-8";
/******************************************************

        スマートフォンサイト用

******************************************************/
@media screen and (max-width: 640px) {


/******************************************************/
/* elements  */
/******************************************************/
* {
    margin: 0;
    padding: 0;
}
html {
    font-size: 10px;
}
body {
    color: #333;
    font-size: 1.3rem;
    line-height: 1.75;
    letter-spacing: 0.5px;
    text-align: center;
    font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",sans-serif;
    -webkit-text-size-adjust: 100%;
}
p {
    padding-bottom: 1em;
}
dt {
}
dd {
}
strong, th {
    font-weight: 600;
}
ul, ol {
    padding-bottom: 1em;
}
li {
}
td p, td li, td dt, td dd, dd li, dd p, li p, li li {
}
table {
    font-size: 100%;
    line-height: 1.6;
    border-top: 1px solid #cccccc;
    border-left: 1px solid #cccccc;
    border-right-style: none;
    border-bottom-style: none;
}
tr {
    text-align: left;
    vertical-align: top;
}
td, th {
    padding: 1.5625vw;
    border-right: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    border-top-style: none;
    border-left-style: none;
    outline-style: none;
}
hr {
    text-align:        left;
    vertical-align:    top;
    height: 1px;
    border-top-style:  none;
    border-bottom:     1px solid #cccccc;
    border-right-style: none;
    border-left-style: none;
    outline-style:     none;
}
a:link {
    color: #3d71b4;
    text-decoration:none;
}
a:visited {
    color: #0b4fb5;
    text-decoration:none;
}
a:hover {
    text-decoration:underline;
}
a:active {
}
img {
    border-style: none;
    border-width: 0;
    vertical-align: top;
    max-width: 100%;
    height: auto;
}
.pc {
    display: none !important;
}
.justifyleft {
    text-align: left !important;
}
.justifyright {
    text-align: right !important;
}
.js_attention {
    background: #fff9d5 !important;
    color: #111 !important;
    padding: 17px 20px 14px !important;
    border-radius: 5px;
    margin-bottom: 20px !important;
    display: block;
}


/******************************************************/
/* base  */
/******************************************************/
#top {
    overflow: hidden;
}
#wrapper {
    position: relative;
}
.contents {
    clear: both;
}
.contents .inbox {
}
.contents .main {
    display: block;
}
.contents .main a:link {
    text-decoration:underline;
}
.contents .main a:hover {
    text-decoration:none;
}
#topcontrol {
    bottom: 40px !important;
    right: 20px !important;
}
#topcontrol img {
    width: 44px !important;
    height: 44px !important;
}


/******************************************************/
/* header  */
/******************************************************/
/* スマホ版はパンくずリスト無し */
.topicpath {
    display: none !important;
}

header{
    position: relative !important;
    letter-spacing: normal;
    text-align: left;
    line-height: 1;
}

header{
    background-color: white;
}

header * p{
    padding-bottom: 0;
    text-align: left;
}

header .tel_wrap p:nth-of-type(1){
    font-size: 12px;
}

header * a,
header * a:active,
header * a:visited,
header * a:hover{
  color: white;
  text-decoration: none;
}
header .link_to_mypage a:link,
header .link_to_mypage a p {
    color: white !important;
    font-size: 12px !important;
}


header .hover_area li a,
header .tel_area p,
header .hover_area li p{
    color: #203348 !important;
    text-decoration: none !important;
}

header .hover_area li:hover a{
    color: #2b78d8 !important;
}

header .hover_area a:hover{
    opacity: 1 !important;   
}

.hover_area li:hover{
    border-bottom: 3px solid #2b78d8;
}

/****************************************************/
/* 下層page看板部分 */
/****************************************************/
/* 追記部分 */
.underlayer_top{
    background: url("../images/common/mv_under_sp.jpg") no-repeat;
    background-size: cover;
    width: 100%;
}

.underlayer_top .category{
    width: 100%;
    text-align: center;
    line-height: 1;
    margin: 0 auto;
    padding: 82px 0 83px;
    font-size: 20px;
    font-weight: bold;
    color: white;

}


/******************************************************/
/* footer */
/******************************************************/
/* 追記部分 */
footer{
    line-height: 1;
    text-align: left;
}


footer .address p{
    padding-bottom: 0;
}
/******************************************************/
/* contents */
/******************************************************/

.contents article.article h3 a,.contents article.article h4 a,.contents article.article h5 a,.contents article.article p a{
    color:#0b4fb5;
}
.contents article.article h3 a:hover,.contents article.article h4 a:hover,.contents article.article h5 a:hover,.contents article.article p a:hover {
    color:#e51414;
}


/*==▼ページ内リンクリスト=======================*/
.contents article.article ul.page_link {
    margin: 0;
    padding: 0;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: stretch;
    align-items: stretch;
}

.contents article.article ul.pb10,
.contents article.article ul.pb60,
.contents article.article ul.pb110 {
    padding-bottom: 0 !important;
}

.contents article.article ul.page_link li {
    margin:0 1% 1.5625vw 0;
    list-style-type: none !important;
    width: 49%;
    border: 1px solid #ccc;
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    align-items: stretch;
}
.contents article.article ul.page_link li:nth-of-type(2n) {
    margin-left: 1%;
    margin-right: 0
}

.contents article.article ul.page_link li a {
    display: block;
    width: 100%;
    text-align: left;
    padding: 3.125vw 2.5vw 3.125vw 4.6875vw;
    font-size: 1rem;
    line-height: 1.35;
    text-decoration:none !important;
    background:url(../images/pagelink_li_arrow.png) 1.5625vw center no-repeat;
    background-size: 5px auto;
    color:#505c6a;
    box-sizing: border-box;
    -webkit-align-self: center;
    align-self: center;
}


/******************************************************/
/* menu_list ul */
/******************************************************/

#menu_list ul {
    border-bottom: 1px solid #dddddd;
    padding: 0;
}
#menu_list li{
    list-style-type: none !important;
    display: inline;
    margin: 0;
}
#menu_list li a {
    display:block;
    border:1px solid #dddddd;
    border-bottom: none;
    padding: 4.375vw 1.5625vw 4.375vw 6.75vw;
    font-size:1.3rem;
    text-decoration:none;
    background:url(../images/menulist_li_arrow.png) 3.125vw center no-repeat;
    background-size: 6px auto;
    color:#515a66;
}

/******************************************************/
/* menu_list dl */
/******************************************************/

#menu_list dl{
    margin-bottom: 4.6875vw;
}
#menu_list dt{
    list-style-type: none !important;
    font-weight: normal;
    margin-left: 0;
    margin-bottom: 4px;
}
#menu_list dd{
    margin-left:0;
    font-size: 1rem;
    line-height: 1.35;
}
#menu_list dt a{
    display:block;
    border: 1px solid #0878d8;
    padding: 4.375vw 1.5625vw 4.375vw 6.75vw;
    font-size:1.3rem;
    text-decoration:none;
    background:url(../images/menulist_li_arrow.png) 3.125vw center no-repeat;
    background-size: 6px auto;
    color:#515a66;
}


/*********** 画像回り込み ***********/

.contents article.article p.imgRight:after,.contents article.article p.imgLeft:after{
    content:".";
    display:block;
    height:0px;
    clear:both;
    visibility:hidden;
}
/*
.contents article.article p.imgRight img{
    display:block;
    float:right;
    margin:5px 0 0 25px;
}
.contents article.article p.imgLeft img{
    display:block;
    float:left;
    margin:5px 25px 0 0;
}
*/
.contents article.article p.imgRight img,
.contents article.article p.imgLeft img {
    display:block;
    margin:5px auto;
}

/*********** 装飾 ***********/
.contents article.article h3.red,
.contents article.article h4.red,
.contents article.article h5.red,
.contents article.article p.red,
.contents article.article dt.red,
.contents article.article dd.red,
.contents article.article li.red{
    color:#e51414;  
}

/*********** ol ***********/
.contents article.article ol{
    margin-left:1em;    
}


/*********** clm2 ***********/

.contents article.article div.clm2 {
}
.contents article.article div.clm2 div{
}
.contents article.article div.clm2 div.clmLeft{
}
.contents article.article div.clm2 div.clmRight{
}
.contents article.article div.clm2 div.clmLeft h3.imgLeft img,
.contents article.article div.clm2 div.clmRight h3.imgLeft img {
}
.contents article.article div.clm2 div.clmLeft h3.imgRight img,
.contents article.article div.clm2 div.clmRight h3.imgRight img {
}
.contents article.article div.clm2 div.clmRight h3:after,.contents article.article div.clm2 div.clmLeft h3:after{
    content:".";
    display:block;
    height:0px;
    clear:both;
    visibility:hidden;
}



/*********** clm3 ***********/

.contents article.article div.clm3{
}
.contents article.article div.clm3 div{
}
.contents article.article div.clm3 div.clmLeft{
}
.contents article.article div.clm3 div.clmRight{
}
.contents article.article div.clm3 div.clmLeft h3,
.contents article.article div.clm3 div.clmRight h3{
}
.contents article.article div.clm3 div.clmLeft h3.imgLeft img,
.contents article.article div.clm3 div.clmRight h3.imgLeft img{
}
.contents article.article div.clm3 div.clmLeft h3.imgRight img,
.contents article.article div.clm3 div.clmRight h3.imgRight img{
}
.contents article.article div.clm3 div.clmRight h3:after,.contents article.article div.clm3 div.clmLeft h3:after{
    content:".";
    display:block;
    height:0px;
    clear:both;
    visibility:hidden;
}


/******************************************************/
/* sidenavi lnavi snavi*/
/******************************************************/
#sidenavi{
    clear: both;
}

#lnavi,
#snavi {
    clear: both;
    text-align: left;
    margin-bottom: 4.6875vw;
}
#lnavi h2,
#snavi h2 {
    font-size: 1.4rem;
    line-height: 1.2;
}
#lnavi h2 a,
#snavi h2 a {
    background: #147ce5 url(../images/subpage/lnavi_h2_arrow.png) no-repeat 8px center;
    color: #ffffff;
    display: block;
    padding: 3.125vw 4.6875vw;
    text-decoration: none;
}
#snavi h2 a {
    background: #e51414 url(../images/subpage/snavi_h2_arrow.png) no-repeat 8px center;
}
#lnavi ul,
#snavi ul {
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: stretch;
    align-items: stretch;
}
#lnavi ul li,
#snavi ul li {
    border-right: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
    font-size: 1.1rem;
    line-height: 1.2;
    letter-spacing: normal;
    width: 50%;
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    align-items: stretch;
}
#lnavi ul li:nth-of-type(2n),
#snavi ul li:nth-of-type(2n) {
    border-right: none;
}
#lnavi ul li a,
#snavi ul li a {
    background: url(../images/subpage/lnavi_li_arrow.png) no-repeat 1.5625vw center;
    background-size: 5px auto;
    color: #111111;
    display: block;
    padding: 4.375vw;
    text-decoration: none;
    width: 100%;
    box-sizing: border-box;
    -webkit-align-self: center;
    align-self: center;
}
#snavi ul li a {
    background: url(../images/subpage/snavi_li_arrow.png) no-repeat 1.5625vw center;
    background-size: 5px auto;
}
#lnavi ul li.active {
    background-color: #e2f2ff;
}
#snavi ul li.active {
    background-color: #fff2f2;
}


/******************************************************/
/* base  */
/******************************************************/
/* パンくず */
.topicpath {
    background: #d9dbdd;
    color: #515a66;
    text-align: left;
    font-size: 0.9rem;
    padding: 1.5625vw 4.6875vw;
}
.topicpath a {
    color: #515a66;
}

/* 記事基本 */
.contents article.article div {
    max-width: 100%;
}
.contents article.article,
.contents article.article_one_colmn {
    text-align: left;
    padding: 4.6875vw;
/*
    overflow-y: hidden;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    display: block;
*/
}
.contents article.article h1 {
    color: #515a66;
    font-size: 2.1rem;
    line-height: 1.1;
    letter-spacing: 0.05em;
    margin-bottom: 3.125vw;
    border: 1px solid #e5e5e5;
    border-left: 6px double #515a66;
    padding: 7.5vw 3.75vw;
    font-weight: normal;
}
.contents article.article h2 {
    background: #515a66;
    color: #ffffff;
    font-size: 1.8rem;
    line-height: 1.2;
    letter-spacing: 0.05em;
    padding: 3.125vw 3.75vw;
    margin-top: 7.5vw;
    margin-bottom: 3.125vw;
    clear: both;
}
.contents article.article h3 {
    border-bottom: 3px double #a8acb2;
    color: #515a66;
    font-size: 1.7rem;
    line-height: 1.35;
    padding: 2px 0 1.875vw 0;
    margin-top: 3.75vw;
    margin-bottom: 3.75vw;
    clear: both;
}
.contents article.article h4 {
    color: #515a66;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.4;
    margin-top: 30px;
    margin-bottom: 14px;
}
.contents article.article h5 {
    color: #515a66;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.3;
    margin: 30px 0 10px;
}
.contents article.article h6 {
    color: #515a66;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.3;
    margin: 30px 0 10px;
}
.contents article.article p {
    padding: 0;
    margin: 0 0 1.5em 0;
}
.contents article.article dl {
}
.contents article.article dt {
    margin-left: 15px;
    display: list-item;
    list-style-type: square;
    font-weight:bold;
    margin-bottom:5px;
}
.contents article.article dd {
    font-size: 1.2rem;
    margin-left:1.2em;
    margin-bottom:5px;
}
.contents article.article ul,
.contents article.article ol {
    padding-bottom: 0;
    margin-bottom: 1.3em;
}
.contents article.article li {
    list-style: disc outside;
    line-height: 1.6;
    margin: 5px 0 5px 1.2em;
}
.contents article.article ol li {
    list-style: decimal;
    margin-left: 1.3em;
}
.contents article.article .scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
.contents article.article .scroll table {
    max-width: 200%;
}
.contents article.article table {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 1.3em;
    width: auto !important;
    max-width: 100%;
}
.contents article.article table ul{
    margin-bottom: 0;
}

.contents article.article thead th,
.contents article.article thead td {
    background: #dcdee0;
    border-color: #b1b5bb;
}
.contents article.article th {
    background: #f9f9fa;
    font-size: 1.4rem;
    font-weight: normal;
    padding: 1.875vw;
}


.contents article.article th.w100 {
}
.contents article.article th.w150 {
}
.contents article.article td {
    padding: 1.875vw;
}
.contents article.article table .nowrap {
    white-space: nowrap;
}


/******************************************************/
/* mailform  */
/******************************************************/
#mailform form {
}
#mailform form table {
    display: block;
    border: none;
}
#mailform form tbody {
    display: block;
}
#mailform form tr {
    display: block;
    margin-bottom: 3.175vw;
}
#mailform form th {
    display: block;
    border: 1px solid #c0c0c0;
    border-top: 3px solid #c0c0c0;
    border-bottom: none;
    padding: 1.5625vw;
}
#mailform form td {
    display: block;
    border: 1px solid #c0c0c0;
    border-top: 1px solid #e5e5e5;
    padding: 3.175vw;
    font-size: 1.1rem;
    line-height: 1.5;
}
#mailform form td label {
    font-size: 1.3rem;
    vertical-align: middle;
    margin-right: 2.5vw;
}
#mailform .text_attention,
#mailform .error,
#mailform .require {
    color: #fc0303;
}
#mailform .text_attention {
    color: #fc0303;
    display: inline-block;
    margin-bottom: 0.9375vw;
}
#mailform .note {
    font-size: 0.9rem;
    line-height: 1.1;
    display: block;
    margin-bottom: 1.5625vw;
    text-align: right;
}
#mailform input + .note {
}
#mailformpro input[type="email"],
#mailformpro input[type="tel"],
#mailform form table input[type="text"] {
    font-size: 1.6rem;
    padding: 1.5625vw;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0.9375vw 0;
}
#mailform form table input[type="radio"],
#mailform form table input[type="checkbox"] {
    margin-right: 4px;
    vertical-align: middle;
}
#mailform form table select {
    font-size: 1.6rem;
}
#mailform form table select option {
    font-size: 1.6rem;
}
#mailform form table textarea {
    font-size: 1.6rem;
    padding: 1.5625vw;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0.9375vw 0;
}
#mailform .buttons {
    text-align: center;
}
#mailform input[type="submit"] {
    font-size: 1.8rem;
    padding: 1.5625vw;
    margin: 1.5625vw auto;
}
#mailform input[type="reset"] {
    display: none;
}



/******************************************************/
/* clear  */
/******************************************************/
.clear{
}

/******************************************************/
/* clearfix  */
/******************************************************/

div#content:after,
footer #f_nav #f_bnr:after,
.clfx:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    max-height: 0;
    visibility: hidden;
}
/* ie7,macIE5 */
div#content,
footer #f_nav #f_bnr,
.clfx {
    display: inline-block;
}
/* winIE6 below, exclude macIE5 \*/
* html div#content,
* html footer #f_nav #f_bnr,
* html .clfx {
    height: 1%;
}
div#content,
footer #f_nav #f_bnr,
.clfx {
    display: block;
}

/******************************************************/
/* internet-service  */
/******************************************************/

.hikari-type {
    vertical-align: -50%;
    margin-left: 10px;
}

.pink {
    color: #ea609e;
}

.red {
    color: #ff0000;
}

.green {
    color: #8fc31f;
}



}




