@charset  "utf-8";
/*
  HELPER
========================================================================================================*/
/* 余白
-----------------------------------------------------*/
.mt0 {
    margin-top: 0px !important;
}
.mt10 {
    margin-top: 10px !important;
}
.mt20 {
    margin-top: 20px !important;
}
.mt25 {
    margin-top: 25px !important;
}
.mt30 {
    margin-top: 30px !important;
}
.mt40 {
    margin-top: 40px !important;
}
.mb0 {
    margin-bottom: 0px !important;
}
.mb5 {
    margin-bottom: 5px !important;
}
.mb10 {
    margin-bottom: 10px !important;
}
.mb20 {
    margin-bottom: 20px !important;
}
.mb25 {
    margin-bottom: 25px !important;
}
.mb30 {
    margin-bottom: 30px !important;
}
.mb40 {
    margin-bottom: 40px !important;
}
.mb50 {
    margin-bottom: 50px !important;
}
.ml0 {
    margin-left: 0!important;
}
.ml10 {
    margin-left: 10px !important;
}
.pt0{
    padding-top: 0px !important;
}
.mr0 {
    margin-right: 0!important;
}
.pb0 {
    padding-bottom: 0px !important;
}
.pb5 {
    padding-bottom: 5px !important;
}
.pb15 {
    padding-bottom: 15px !important;
}
.pb20 {
    padding-bottom: 20px !important;
}
.pb40 {
    padding-bottom: 40px !important;
}
.pl30{
    padding-left:30px;
}
.pr30{
    padding-right:30px;
}
.pr80{
    padding-right:80px;
}
.smp {
    padding: 25px;
}
/* 色
-----------------------------------------------------*/
.color-red {
    color: red !important;
}
.color-pink {
    color: #e4007f !important;
}
.color-lightblue {
    color: #0099ff !important;
}
.color-darkblue {
    color: #039 !important;
}
.color-orange {
    color: #f15907 !important;
}
.color-yellow {
    color: #f8fb05 !important;
}
.color-white {
    color: #fff !important;
}
.bg-white {
    background-color: #fff !important;
}
.bg-orange {
    background-color: #f15907 !important;
}
.bg-orange-light {
    background-color: #feeee6 !important;
}
.bg-lightgray {
    background-color: #efefef !important;
}
.bg-pink {
    background-color: #e4007f !important;
}
.bg-pink-light {
    background-color: #f354a4 !important;
}
.bg-pink-highlight {
    background-color: #fff2f9 !important;
}
.bg-lightblue {
    background-color: #0099ff !important;
}
.bg-lightblue-light {
    background-color: #46bbf2 !important;
}
.bg-lightblue-highlight {
    background-color: #DEF1FE !important;
}
.bg-darkblue {
    background-color: #039 !important;
}
/* フォント
-----------------------------------------------------*/
.font10 {
    font-size: 10px !important;
}
.font11 {
    font-size: 11px !important;
}
.font12 {
    font-size: 12px !important;
}
.font13 {
    font-size: 13px !important;
}
.font14 {
    font-size: 14px !important;
}
.font16 {
    font-size: 16px !important;
}
.font17 {
    font-size: 17px !important;
}
.font18 {
    font-size: 18px !important;
}
.font20 {
    font-size: 20px !important;
}
.font22 {
    font-size: 22px !important;
}
.font24 {
    font-size: 24px !important;
}
.font28 {
    font-size: 28px !important;
}
.font30 {
    font-size: 30px !important;
}
.font32 {
    font-size: 32px !important;
}
.font40 {
    font-size: 40px !important;
}
.font60 {
    font-size: 60px !important;
}
.font-small {
    font-size: 11px !important;
}
.font-medium {
    font-size: 16px !important;
}
.font-large {
    font-size: 18px !important;
}
.font-xlarge {
    font-size: 26px !important;
}
.bold {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-weight: bold;
}
/* テキスト
-----------------------------------------------------*/
.text-center {
    text-align: center !important;
}
.text-left {
    text-align: left !important;
}
.text-right {
    text-align: right !important;
}
.text-middle {
    vertical-align: middle !important;
}
.text-underline {
    text-decoration: underline !important;
}
/* テキスト制御
-----------------------------------------------------*/
.nowrap {
    white-space: nowrap;
}
/* メッセージ
-----------------------------------------------------*/
.error {
    font-size: 12px;
    color: red;
}
/* 幅
-----------------------------------------------------*/
.w100 {
    width: 100%;
}
.w50 {
    width: 50%!important;
}
.w40 {
    width: 40%!important;
}
.w30 {
    width: 30%!important;
}
.w25 {
    width: 25%!important;
}
.w20 {
    width: 20%!important;
}
/* 矢印
-----------------------------------------------------*/
.arrow-pink {
    background: transparent url(/common2/images/arrow_pink_right.png) no-repeat left center;
    background-size: 6px auto;
    padding-left: 10px;
}
.arrow-blue {
    background: transparent url(/common2/images/arrow_blue_right.png) no-repeat left center;
    background-size: 6px auto;
    padding-left: 10px;
}
.arrow-link{
    position: relative;
    padding-left: 12px;
}
.arrow-link::after{
    position: absolute;
    top: 50%;
    left: 0;
    content: '';
    width: 3px;
    height: 3px;
    border: 1px solid #666;
    border-width: 1px 1px 0 0;
    transform: rotate(45deg) translateY(-50%);
    -webkit-transform: rotate(45deg) translateY(-50%);
}
.arrow-contact{
    background: transparent url(/common2/images/arrow_contact.png) no-repeat left center;
    background-size: 14px auto;
    padding-left: 17px;
}
/* 罫線
-----------------------------------------------------*/
.border {
    border: 1px solid #c1c1c1;
}
.border-radius {
    overflow: hidden;
    border-radius: 5px;
    border: 1px solid #c1c1c1;
}
.borderT-none{
    border-top:none;
}
.borderB-none{
    border-bottom:none;
}
/* 画像・キャプション
-----------------------------------------------------*/
figure {
    display: table;
    margin: 0 auto 10px;
}
figure img {
    padding: 0;
    margin: 0 0 5px;
}
figure figcaption {
    font-size: 12px;
    line-height: 130%;
    display: table-caption;
    caption-side: bottom;
    text-align: left;
}
/* マウスオーバー
-----------------------------------------------------*/
.hover:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: .7;
}
/* 回り込み
-----------------------------------------------------*/
.pull-left {
    float: left;
    margin-right: 15px;
    margin-bottom: 15px;
}
.pull-right {
    float: right;
    margin-left: 15px;
    margin-bottom: 15px;
}
.clear {
    clear: both;
}
.clearfix:before,.clearfix:after {
    content: "";
    display: block;
    overflow: hidden;
}
.clearfix:after { clear: both; }
.clearfix { *zoom: 1;}
/* 囲み枠
-----------------------------------------------------*/
.notice-gray {
    overflow: hidden;
    padding: 20px 20px 10px;
    background: #efefef;
    margin-bottom: 20px;
    border-radius: 5px;
}
.notice-yellow {
    overflow: hidden;
    padding: 20px 20px 10px;
    background: #FBF6DC;
    margin-bottom: 20px;
    border-radius: 5px;
}
.block-gray {
    overflow: hidden;
    padding: 20px 20px 10px;
    border: 1px solid #c1c1c1;
    margin-bottom: 20px;
    border-radius: 5px;
}
.block-gray .title {
    margin-top: 0 !important;
}
/* youtube表示用
-----------------------------------------------------*/
.movie iframe {
    width:640px;
    height:360px;
}
#cm .col-2 .movie{
    margin-bottom: 5px;
}
#cm .col-2 .movie iframe{
    width: 350px;
    height: 201px;
}
#cm .col-2 .movie-caption{
    font-size: 12px;
    line-height: 130%;
    display: block;
    text-align: left;
    width: 350px;
    margin: 5px auto 10px;
}
/* 表示制御
-----------------------------------------------------*/
.show {
    display: block !important;
}
.hidden {
    display: none !important;
    visibility: hidden !important;
}
.block-pc { display: block !important; }
.block-sp { display: inline !important; }
.visible-pc { display: block !important; }
.hidden-pc { display: none !important; }
.visible-sp { display: none !important; }
.hidden-sp { display: block !important; }
/*
  LIST
========================================================================================================*/
/* リストスタイルなし
-----------------------------------------------------*/
.list-type-none,
.list-type-none li {
    list-style-type: none;
    margin-left: 0;
}
/* 並列リスト
-----------------------------------------------------*/
.list-horizontal {
    list-style-type: none;
    margin: 0 -5px;
}
.list-horizontal li {
    list-style-type: none;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}
.list-half li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    list-style-type: none;
    width: 48%;
    margin: 0;
    margin-right: 2%;
    margin-bottom: 10px;
}
.list-half li:nth-child(2n) {
    margin-right: 0;
}
.list-half.list-bullet {
    padding-left: 1.5em;
    overflow: hidden;
}
.list-half.list-bullet li {
    list-style-type: disc;
    margin-bottom: 0;
}
.list-table {
    display: table;
    margin: 0 -5px;
}
.list-table li {
    display: table-cell;
    padding-right: 5px;
    padding-left: 5px;
}
/*
  LAYOUT
========================================================================================================*/
/* セクション（余白大）
-----------------------------------------------------*/
section.padding-large {
    padding: 30px 0 30px;
    margin-bottom: 40px;
}
/* メインレイアウト
-----------------------------------------------------*/
.fields-layout {
    margin-bottom: 40px;
}
.fields-layout .fields {
    /*overflow: hidden;*/
    background: #fff;
    border-radius: 5px;
    font-size: 14px;
}
.fields-layout .fields:last-child {
    margin-right: 0 !important;
}
.fields-layout .fields > .head {
    background: #666;
    border-radius: 5px 5px 0 0;
    overflow: hidden;
}
.fields-layout .fields > .head .title {
    margin: 0;
    padding: 13px 10px;
    font-size: 14px;
    text-align: center;
    color: #fff;
    line-height: 120%;
    border: 0;
}
.fields-layout .fields > .head .title.large {
    font-size: 28px;
}
.fields-layout .fields > .head .title.small {
    font-size: 14px;
}
.fields-layout .fields .title.l2 {
    padding: 5px 0px;
}
.fields-layout .fields .content {
    /*overflow: hidden;*/
    border:1px solid #c1c1c1;
    border-top: 0;
    border-radius: 0 0px 5px 5px;
    clear: both;
}
.fields-layout .fields .content:before,
.fields-layout .fields .content:after {
    content: "";
    display: block;
    overflow: hidden;
}
.fields-layout .fields .content:after { clear: both; }
.fields-layout .fields.block1 {
    float: left;
    width: 312px;
    margin-right: 22px;
}
.fields-layout .fields.block2 {
    float: left;
    width: 646px;
    margin-right: 22px;
}
.fields-layout .fields.block-half {
    float: left;
    width: 480px;
    margin-right: 20px;
}
.fields-layout .fields-layout .fields.block-half {
    width: 454px;
}
.fields-layout .fields .field {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 25px 10px 25px;
}
.fields-layout .fields .field .title-first {
    margin-top: 0px !important;
    padding-top: 0px !important;
}
.fields-layout .fields.block2 .field,
.fields-layout .fields.block3 .field,
.fields-layout .fields.block-half .field {
    float: left;
    border-radius: 0;
    border-right:1px solid #c1c1c1;
}
.fields-layout .fields.block2 .field {
    width: 320px;
}
.fields-layout .fields.block3 .field {
    width: 325px;
}
.fields-layout .fields.separate .field {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    padding: 0 15px;
}
.fields-layout .field:last-child {
    border-right: 0 !important;
}
.fields-layout .fields.block2 .field:last-child,
.fields-layout .fields.block3 .field:last-child,
.fields-layout .fields.block-half .field:last-child {
    border: 0
}
.fields-layout .fields .field > .head {
    margin-bottom: 10px;
    border-bottom: 1px solid #c1c1c1;
}
.fields-layout .fields.nohead > .content {
    border: 1px solid #c1c1c1;
    border-radius: 5px;
    padding-top:10px;
    padding-bottom: 40px;
}
.fields-layout .fields .field .col-2 { width: 454px; vertical-align: top;}
.fields-layout .fields-layout .fields .field .col-2 { width: 428px; vertical-align: top;}
.fields-layout .fields .field .col-3 { width: 294px; vertical-align: top; }
.fields-layout .fields .field .col-4 { width: 217px; vertical-align: top; }
.fields-layout .fields .field .col-5 { width: 169px; vertical-align: top; }
.fields-layout .fields .field .smp .col-2 { width: 431px; vertical-align: top;}
.fields-layout .fields .field .smp .col-3 { width: 271px; vertical-align: top; }
.fields-layout .fields .field .smp .col-4 { width: 194px; vertical-align: top; }
.fields-layout .fields .field .smp .col-5 { width: 146px; vertical-align: top; }
.fields-layout .fields .visual {
    margin: 0;
    padding:0;
    border: 0;
}
.fields-layout .fields h4 {
    font-size: 18px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    text-align: center;
    padding: 0 0 18px 0;
    margin :0;
    line-height: 130%;
    border: 0;
}
.fields-layout .fields .field > .head p {
    min-height: 44px;
    margin: 0;
}
.fields-layout .fields .ind > .title {
    border: 0;
    text-align: center;
}
.fields-layout .fields .ind > .title.title-strong {
    font-size: 24px;
}
.fields-layout .fields .ind > .title.title-strong span {
    font-size: 40px;
}
.fields-layout .fields .ind .bqa {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    
    background: #f3f3f3;
    padding: 25px 25px 20px 25px;
    margin-top: 15px;
    margin-bottom: 30px;
}
.fields-layout .fields .ind .bqa h5 {
    font-size: 14px;
    text-align: center;
    color: #666;
    margin-bottom: 15px;
}
.fields-layout .fields .btn-list,
.fields-layout .fields .btn-list li {
    list-style-type: none;
    margin: 0;
}
.fields-layout .fields .btn-list li {
    margin-bottom: 10px;
}
.fields-layout .fields.block1 [class^="btn-"],
.fields-layout .fields.block2 [class^="btn-"],
.fields-layout .fields.block3 [class^="btn-"] {
    width: 100%;
    text-align: center;
}
/*
*/
.field .smp {
    padding: 0 20px 20px 20px;
}
.field .ind p,
.field .ind ul,
.field .ind ol {
    font-size: 14px;
    margin-bottom: 15px; 
}
.field .ind ul li,
.field .ind ol li {
    margin-bottom: 5px;
}
/*------ プラン詳細ページのおすすめのテーブル -----*/
.field .ind .recommend-table {
    overflow: hidden;
    border-radius: 10px;
    /*padding: 35px 0px 0px;*/
    padding: 0;
    margin-bottom: 40px;
    border: 1px solid #c1c1c1;
}
.field .ind .recommend-table .title {
    padding: 30px;
    text-align: center;
    border-bottom: 1px solid #c1c1c1;
}
.field .ind .recommend-table ul {
    display: table;
    width: 100%;
    margin-bottom: 0 !important;
}
.field .ind .recommend-table ul li {
    list-style-type: none;
    display: table-cell;
    width: 33.33%;
    text-align: center;
    padding: 0px 0 20px;
    border-right:1px solid #c1c1c1;
    margin-bottom: 0 !important;
}
.field .ind .recommend-table ul li:last-child {
    border-right: 0;
}
.field .ind .recommend-table ul li img {
    display: inline-block;
    margin-bottom: 15px;
}
/*------ mmobile プラン用 -----*/
.fields-layout.fields-layout-mobile-plan .fields.separate .field {
    padding: 10px 15px;
}
.fields-layout.fields-layout-mobile-plan .fields.separate .field .title {
    display: table;
    width: 100%;
    text-align: left;
    padding: 11px 0 21px;
    font-size: 17px;
}
.fields-layout.fields-layout-mobile-plan .fields.separate .field .title.l2 {
    padding: 2px 0 15px;
}
.fields-layout.fields-layout-mobile-plan .fields.separate .field .title span {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
}
.fields-layout.fields-layout-mobile-plan .fields.separate .field .title span img {
    margin-right: 5px;
}
.fields-layout.fields-layout-mobile-plan .fields.separate .field .ind {
    padding: 12px 0;
}
/*------ プラン詳細ページの3つのPOINT -----*/
.point-list {
    margin: 15px auto 30px;
    padding: 40px 0;
}
.point-list ul {
    display: table;
    margin: 0 auto;
}
.point-list ul li {
    display: table-cell;
    text-align: center;
    list-style-type: none;
}
.point-list ul.p3 li {
    width: 230px;
}
.point-list ul.p4 li {
    width: 200px;
}
.point-list ul li img {
    display: inline-block;
    margin-bottom: 15px;
}
/*--- 注意ボックス -----*/
.field .ind .box-notice {
    padding: 40px 40px 30px;
    border:1px solid #c1c1c1;
    border-radius: 5px;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 13px;
    line-height: 170%;
}
.field .ind .box-notice .title {
    font-size: 16px;
    margin-bottom: 20px;
}
/* ----- プラン詳細ページなどで引用のような括弧枠のボックス ------*/
/* プランテーブル */
.field .ind .plan-table-wrap {
    width: 840px;
    margin: 0 auto 40px;
}
.field .ind .plan-table {
    overflow: hidden;
    float: left;
    border: 1px solid #c1c1c1;
    border-radius: 5px;
    width: 400px;
    text-align: center;
    margin: 0 9px;
}
.field .ind .plan-table .title {
    padding: 35px 0;
    margin: 0;
}
.field .ind .plan-table ul {
    display: table;
    width: 100%;
    border-top: 1px solid #c1c1c1;
    margin: 0;
}
.field .ind .plan-table ul li {
    display: table-cell;
    width: 200px;
    width: 50%;
    margin: 0;
    padding: 15px 0;
    color:#e4007f;
    font-size: 16px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    vertical-align: middle;
    list-style-type: none;
}
.field .ind .plan-table ul li:nth-of-type(1) {
    border-right: 1px solid #c1c1c1;
}
.field .ind .plan-table2 {
    width: 100%;
    font-size: 16px;
}
.field .ind .plan-table2 th {
    text-align: center;
    padding: 15px 10px;
}
.field .ind .plan-table2 td {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 22px;
    vertical-align: middle;
    text-align: center;
     padding: 30px 10px;
}
.field .ind .plan-table2 td ul {
    margin: 0;
    padding: 0;
}
.field .ind .plan-table2 td .text-tail {
    font-size: 16px;
}
.field .foot {
    margin-top: 30px;
    padding-bottom:20px;
}
.field.mt-none .foot {
    margin-top:5px;
    padding-bottom:20px;
}
/* カラム
-----------------------------------------------------*/
.cols {
    padding-left: 0;
    font-size: 0;
    margin: 0 -10px;
}
.col-2,
.col-3,
.col-4,
.col-5 {
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0;
    list-style-type: none;
    font-size: 12px;
    text-align: left;
    vertical-align: top;
}
.col-2 {
    width: 480px;
    margin: 0 10px;
}
.col-center {
    text-align: center;
}
.fields-layout .col-2,
.fields-layout .col-3,
.fields-layout .col-4,
.fields-layout .col-5 {
    font-size: 14px;
}
.col-3 {
    width: 311px;
    margin:0 11px;
}
.col-4 {
    width: 230px;
    margin: 0 10px;
}
.col-5 {
    width: 180px;
    margin: 0 10px;
}
/*-------- 料金・サービスなどのオプション --------*/
/* ボックス
-----------------------------------------------------*/
/* 製品などのbox枠 */
article [class^="boxes"] {
    margin: 0 0px 20px;
    padding-bottom: 10px;
}
article [class^="boxes"] .box {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
     
    /* overflow: hidden; */
    float: left;
    width: 309px;
    border-right: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
}
article [class^="boxes"] .box:nth-child(1),
article [class^="boxes"] .box:nth-child(2),
article [class^="boxes"] .box:nth-child(3) {
    border-top: 1px solid #c1c1c1;
}
article [class^="boxes"] .box:nth-child(3n + 1),
article [class^="boxes"] .box:first-child {
    border-left: 1px solid #c1c1c1;
}
article [class^="boxes"] .box:nth-child(3n),
article [class^="boxes"] .box:last-child {
    margin-right: 0px;
}
article [class^="boxes"] .box.box-radius-lt { border-top-left-radius: 10px; overflow: hidden; }
article [class^="boxes"] .box.box-radius-rt { border-top-right-radius: 10px; overflow: hidden; }
article [class^="boxes"] .box.box-radius-lb { border-bottom-left-radius: 10px; overflow: hidden; }
article [class^="boxes"] .box.box-radius-rb { border-bottom-right-radius: 10px; overflow: hidden; }
article .boxes .box > .head {
    border-bottom: 1px solid #c1c1c1;
}
article .boxes .box > .head .title {
    position: relative;
    vertical-align: middle;
    font-size: 14px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    margin: 0;
    padding: 26px 10px;
    border: 0;
    text-align: center;
}
article .boxes .box > .head .title.l2 {
    padding: 15px 10px;
}
article .boxes .box > .head .title.bell-new {
    padding-left: 45px;
}
article .boxes .box > .ind {
    padding: 20px 20px 0;
}
article .boxes .box > .ind .btn-list {
    padding: 0 20px;
}
article .boxes .box > .ind .service {
    text-align: center;
    margin-bottom: 5px;
}
article .boxes .box > .ind .service li {
    display: inline-block;
    margin: 0 5px 10px;
    list-style-type: none;
}
article .boxes .box > .ind .pr {
    margin: 0 0px 20px;
    color: #e4007f;
    text-align: center;
    font-size: 15px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;    
    border-bottom: 1px solid #e4007f;
}
article .boxes .box > .ind .pr span {
    position: relative;
    top: 12px;
    display: inline-block;
    padding: 0 10px;
    background: #fff;
}
article .boxes .box > .ind .img {
    position: relative;
    padding: 0;
}
article .boxes .box > .ind .img img {
    width: 100%;
}
article .boxes .box > .ind .img .badge {
    position: absolute;
    top: -15px;
    right: -15px;
    width: auto;
}
article .boxes .box > .ind .name {
    text-align: center;
    font-size: 18px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}
/*
article .boxes .box > .ind .name span {
    display: block;
    font-size: 13px;
}
*/
article .boxes .box > .ind .maker {
    text-align: center;
}
article .boxes .box > .ind .spec {
    font-size: 11px;
    width: 250px;
    margin: 0 auto 15px;
}
article .boxes .box > .ind .spec dt {
    float: left;
    width: 8em;
    text-align: right;
    margin-bottom: 5px;
}
article .boxes .box > .ind .spec dd {
    padding-left: 8em;
    margin-bottom: 5px;
}
article .boxes .box > .ind .btn-list li {
    list-style-type: none;
    margin: 0;
    margin-bottom: 10px;
}
article .boxes .box > .ind .btn-list li a {
    width: 100%;
    text-align: center;
}
article .boxes .box > .foot {
    margin-top: 10px;
    padding-left: 20px;
    padding-right: 20px;
} 
article .boxes .box > .foot .btn-list [class^="btn"] {
    width: 100%;
}
/*
.fields-layout .fields .field .boxes {
    margin: 0 10px;
    padding-bottom: 10px;
}
.fields-layout .fields .field .boxes .box {
    width: 289px;
}
*/
article .boxes2 .box > .head {
    padding: 25px 20px 0px 20px;
}
article .boxes2 .box > .head .title {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 18px;
    border: 0;
    padding: 15px 0 23px;
    text-align: center;
    line-height: 130%;
}
article .boxes2 .box > .head .title.l2 {
    padding: 0 0 15px;
}
article .boxes2 .box > .ind {
    padding: 0px 20px 0px;
}
article .boxes2 .box > .ind .icon {
    margin-bottom: 20px;
}
article .boxes2 .box > .ind .description {
    padding: 15px 0px 0px;
}
article .boxes2 .box > .foot {
    padding-left: 20px;
    padding-right: 20px;
}
article .boxes2 .box > .foot [class^="btn"] {
    width: 100%;
}
article .boxes3 .box > .head {
    padding: 25px 20px 0px 20px;
}
article .boxes3 .box > .head .title {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 18px;
    border: 0;
    padding: 15px 0 23px;
    text-align: center;
    line-height: 130%;
}
article .boxes3 .box > .head .title.l2 {
    padding: 0 0 15px;
}
article .boxes3 .box > .ind {
    margin-top:40px;
    padding: 0px 18px;
}
article .boxes3 .box > .ind .icon {
    margin-bottom: 20px;
}
article .boxes3 .box > .ind .description {
    overflow:hidden;
}
article .boxes3 .box > .foot {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 30px;
}
article .boxes3 .box > .foot [class^="btn"] {
    width: 100%;
}
/* --------- カラム用 ---------*/
.boxer-wrap {
    padding-bottom: 20px;
    margin-bottom: 40px;
}
.boxer {
    font-size: 0;
    margin: 0 -10px;
}
.boxer .box {
    overflow: hidden;
    border-radius: 5px;
    vertical-align: top;
}
.fields-layout .boxer-wrap {
    padding-bottom: 0;
    margin-bottom: 20px;
}
.boxer .head {
    position: relative;
}
.boxer .ind,
.boxer .ind ul li {
    line-height: 0;
    font-size: 0;
    list-style-type: none;
}
.boxer .ind .link-boxw,
.boxer .ind .link-boxw .link-box {
    border-radius: 0;
}
.boxer .ind > .link-boxw,
.boxer .ind ul li:last-child .link-boxw,
.boxer .ind ul li:last-child .link-boxw .link-box {
    border-radius: 0 0 5px 5px;
}
/* ボックス用
-----------------------------------------------------*/
.units {
    margin-bottom: 40px;
}
.units a.link-box {
    color: #2c2c2c !important;
}
.unit {
    border-radius: 5px;
    background: #fff;
    margin-bottom: 20px;
}
.unit .head {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 13px 10px;
    border-bottom: 1px solid #c1c1c1;
}
.unit .head .title {
    font-size: 14px;
    padding-bottom: 0;
    color: #2c2c2c;
}
.unit .head.bg-white .title {
    color: #2c2c2c;
}
.unit .head.bg-darkblue .title,
.unit .head.bg-lightblue .title,
.unit .head.bg-pink .title,
.unit .head.bg-lightblue-light .title,
.unit .head.bg-pink-light .title {
    color: #fff;
}
.unit .img {
    width: 100%;
    border-bottom: 1px solid #c1c1c1;
}
.unit .ind {
    padding: 20px 20px;
    font-size: 14px;
}
.unit .ind .sub-title {
    font-size: 16px;
    color: #666;
    margin-bottom: 10px;
}
.unit .ind ul {
    list-style-type: none;
}
.unit .ind ul li {
    list-style-type: none;
    margin: 0;
    margin-bottom: 15px;
}
/* マルチカラム
-----------------------------------------------------*/
.area-col {
    overflow: hidden;
    margin-bottom: 20px;
}
.area-col img {
    max-width: 100%;
    height: auto !important;;
}
.area-col .area-left {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
}
.area-col.arl01 .area-left { width: 20%; }
.area-col.arl02 .area-left { width: 32%; }
.area-col.arl03 .area-left { width: 50%; }
.area-col.arl04 .area-left { width: 80%; }
.area-col.arl01 .area-right { width: 80%; }
.area-col.arl02 .area-right { width: 68%; }
.area-col.arl03 .area-right { width: 50%; }
.area-col.arl04 .area-right { width: 20%; }
.area-col .area-right {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    float: right;
    padding-left: 10px;
}
.area-col.arr01 .area-left { width: 80%; }
.area-col.arr02 .area-left { width: 68%; }
.area-col.arr03 .area-left { width: 50%; }
.area-col.arr04 .area-left { width: 20%; }
.area-col.arr01 .area-right { width: 20%; }
.area-col.arr02 .area-right { width: 32%; }
.area-col.arr03 .area-right { width: 50%; }
.area-col.arr04 .area-right { width: 80%; }
/*
  TAB
========================================================================================================*/
/* タブ大
-----------------------------------------------------*/
.tabs2,
.tabs3 {
    display: none;
    position: relative;
    padding-top: 79px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.tabs2 .tab-nav,
.tabs3 .tab-nav {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    background: #fff;
    box-sizing: border-box;
    border-radius: 10px 10px 0 0;
    border: 1px solid #c1c1c1;
    border-bottom:0;
}
.tabs2 .tab-nav { width: 356px; }
.tabs3 .tab-nav { width: 308px; }
.tabs2 .tab-nav a,
.tabs3 .tab-nav a {
    display: block;
    background: #f6f6f6;
    border: 1px solid #f6f6f6;
    border-width: 1px 1px 0;
    border-radius: 10px 10px 0 0;
}
.tabs2 .tab-nav.current,
.tabs3 .tab-nav.current {
    padding: 0;
}
.tabs2 .tab-nav.current a,
.tabs3 .tab-nav.current a {
    padding-bottom: 2px;
    background: #fff;
}
.tabs2 .tab-nav:first-of-type { left: -382px }
.tabs2 .tab-nav:last-of-type { left: 382px }
.tabs3 .tab-nav:first-of-type { left: -671px }
.tabs3 .tab-nav:last-of-type { left: 671px }
.tabs2 .tab-nav.current a:before,
.tabs3 .tab-nav.current a:before {
    display: none !important;
}
.tabs2 .tab-lightblue.tab-nav.current,
.tabs2 .tab-lightblue.tab-nav.current a,
.tabs3 .tab-lightblue.tab-nav.current,
.tabs3 .tab-lightblue.tab-nav.current a {
    border: 1px solid #09f;
    border-width: 1px 1px 0;
}
.tabs2 .tab-pink.tab-nav.current,
.tabs2 .tab-pink.tab-nav.current a,
.tabs3 .tab-pink.tab-nav.current,
.tabs3 .tab-pink.tab-nav.current a {
    border: 1px solid #e4007f;
    border-width: 1px 1px 0;
}
.tabs2 .tab-lightblue.tab-nav a:before,
.tabs2 .tab-pink.tab-nav a:before,
.tabs3 .tab-lightblue.tab-nav a:before,
.tabs3 .tab-pink.tab-nav a:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 22px;
    width: 7px;
    height: 7px;
}
.tabs2 .tab-lightblue.tab-nav a:before,
.tabs3 .tab-lightblue.tab-nav a:before {
    border-top: 2px solid #09f;
    border-right: 2px solid #09f;
}
.tabs2 .tab-pink.tab-nav a:before,
.tabs3 .tab-pink.tab-nav a:before {
    border-top: 2px solid #e4007f;
    border-right: 2px solid #e4007f;
}
.tabs2 .tab-content-lightblue.current,
.tabs2 .tab-content-pink.current,
.tabs3 .tab-content-lightblue.current,
.tabs3 .tab-content-pink.current {
    display: block
}
.tabs2 .tab-content-lightblue,
.tabs2 .tab-content-pink,
.tabs3 .tab-content-lightblue,
.tabs3 .tab-content-pink {
    display: none;
    background: #fff
}
.tabs2 .tab-content-lightblue,
.tabs3 .tab-content-lightblue {
    padding-top: 37px;
    padding-bottom: 30px;
    border-top: 2px solid #09f;
    border-bottom: 2px solid #09f;
}
.tabs2 .tab-content-pink,
.tabs3 .tab-content-pink {
    padding-top: 37px;
    padding-bottom: 30px;
    border-top: 2px solid #e4007f;
    border-bottom: 2px solid #e4007f;
}
.tabs2 .tab-content-lightblue .tab-title h3,
.tabs3 .tab-content-lightblue .tab-title h3 {
    color: #0099ff;
    font-size: 20px;
    text-align: center;
    padding-bottom: 50px;
}
.tabs2 .tab-content-pink .tab-title h3,
.tabs3 .tab-content-pink .tab-title h3 {
    color: #e4007f;
    font-size: 20px;
    text-align: center;
    padding-bottom: 50px;
}
/* タブ中
-----------------------------------------------------*/
.tab2,
.tab3 {
    position: relative;
    padding-top: 65px;
    padding-bottom: 65px;
    margin-bottom: 60px;
}
.tab2 .tab-nav,
.tab3 .tab-nav {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0;
    width: 240px;
    overflow: hidden;
    background: #fff;
    border-radius: 10px 10px 0 0;
    border: 1px solid #c1c1c1;
    border-bottom: 0;
}
.tab3.tab-nav-wide .tab-nav{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0;
    width: 260px;
    overflow: hidden;
    background: #fff;
    border-radius: 10px 10px 0 0;
    border: 1px solid #c1c1c1;
    border-bottom: 0;
}
.tab2 .tab-nav.bottom,
.tab3 .tab-nav.bottom {
    top: auto;
    bottom: 0;
    border: 1px solid #c1c1c1;
    border-top: 0;
    border-radius: 0 0 10px 10px;
}
.tab2 .tab-nav a,
.tab3 .tab-nav a {
    display: block;
    background: #f6f6f6;
    height: 64px;
    box-sizing: border-box;
    padding: 20px 0 19px;
    text-align: center;
    font-size: 16px;
    color: #666 !important;
    text-decoration: none;
}
.tab2 .tab-nav.current a,
.tab3 .tab-nav.current a {
    height: 65px;
    padding-bottom: 2px;
    background: #fff;
    padding: 20px 0 20px;
}
.tab2 .tab-nav.nav01 { left: -252px; }
.tab2 .tab-nav.nav02 { left: 252px; }
.tab3 .tab-nav.nav01 { left: -505px; }
.tab3 .tab-nav.nav02 { left: 0px; }
.tab3 .tab-nav.nav03 { left: 505px; }
.tab3.tab-nav-wide .tab-nav.nav01 { left: -535px; }
.tab3.tab-nav-wide .tab-nav.nav02 { left: 0px; }
.tab3.tab-nav-wide .tab-nav.nav03 { right: -30px; }
.tab2 .tab-nav.current a:before,
.tab3 .tab-nav.current a:before {
    display: none !important;
}
.tab2 .tab-content.current,
.tab3 .tab-content.current {
    display: block
}
.tab2 .tab-content,
.tab3 .tab-content {
    display: none;
    background: #fff;
    border-top: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
    padding-top: 40px;
    padding-bottom: 20px
}
/* タブ切り替えコンテンツ
-----------------------------------------------------*/
.tabs-other > div {
    display: none;
}
.tabs-other > div.current {
    display: block;
}
/*
  NAV
========================================================================================================*/
/* ローカルナビ（SSI）
-----------------------------------------------------*/
#local-nav {
    padding: 10px 50px 25px;
    margin-bottom: 20px;
}
#local-nav h2 {
    font-size: 20px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    margin: 0;
    padding: 0;
    margin-bottom: 20px;
}
#local-nav ul {
    margin: 0 -40px;
    padding: 0;
    /* background: url(/common2/images/bg_local-nav.png) repeat-y center top; */
}
#local-nav ul li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    
    float: left;
    /*background: url(/common2/images/arrow_pink_right.png) no-repeat 26px 13px;*/
    background-size: 6px auto;
    width: 33%;
    margin: 0 0 20px;
    padding: 5px 10px 5px 40px;
    list-style-type: none;
    font-size: 14px;
    border-right: 1px solid #c1c1c1;
}
#local-nav ul li:nth-of-type(3n),
#local-nav ul li:last-of-type {
    border-right: 0;
}
#local-nav ul.col-4 {
    width: 100%;
}
#local-nav ul.col-4 li {
    width: 25%;
    height: auto!important;
}
#local-nav ul.col-4 li:nth-of-type(3n) {
    border-right: 1px solid #c1c1c1;
}
#local-nav ul.col-4 li:nth-of-type(4n),
#local-nav ul.col-4 li:last-of-type {
    border-right: 0;
}
/* ローカルナビ
-----------------------------------------------------*/
aside .page-nav {
    overflow: hidden;
    border: 1px solid #666;
    border-radius: 5px;
    padding: 20px;
    margin-top: 40px;
}
aside .page-nav dt {
    font-size: 16px;
    margin-bottom: 10px;
}
aside .page-nav dd {
    display: inline-block;
    margin-right: 20px;
    font-size: 14px;
}
aside .page-nav dt a,
aside .page-nav dd a {
    white-space: nowrap;
    background: transparent url(/common2/images/arrow_pink_right.png) no-repeat left 5px;
    background-size: 6px auto;
    padding-left: 10px;
}
/* 関連リンク
-----------------------------------------------------*/
.related-nav {
    width: 980px;
    margin: 60px auto 60px;
}
.related-nav ul {
    overflow: hidden;
    border-radius: 5px;
}
.related-nav ul li {
    list-style-type: none;
    box-sizing: border-box;
    float: left;
    width: 245px;
    line-height: 0;
    border-right: 1px solid #c1c1c1;
    margin-bottom: 0;
    background: #fff;
    font-size: 15px;
    vertical-align: middle;
    text-align: center;
    margin-left: 0;
}
.related-nav ul li:last-of-type {
    border: 0;
}
.related-nav ul li a {
    display: block;
    color: #666 !important;
    text-decoration: none !important;
}
.related-nav ul li a img {
    vertical-align: middle;
    margin-right: 12px;
}
.related-nav ul li a span {
    display: inline-block;
    vertical-align: middle;
    padding: 31px 0;
    line-height: 130%;
}
/*
  HEADLINE
========================================================================================================*/
.hline{
    display: table;
    margin: 0;
    padding: 0;
    padding-bottom: 40px;
    border: 0;
}
.hline:before {
    display: table-cell;
    content: ' ';
    width: 49%;
    border-bottom: 1px solid #2c2c2c;
}
.hline:after {
    display: table-cell;
    content: ' ';
    width: 49%;
    border-bottom: 1px solid #2c2c2c;
}
.hline span {
    position: relative;
    top: .7em;
    display: table-cell;
    text-align: center;
    white-space: nowrap;
    color: #2c2c2c;
    font-size: 18px;
    font-weight: 400;
    padding: 0 10px;
}
/*
  TEXT
========================================================================================================*/
/* NEWアイコン
-----------------------------------------------------*/
.bell-new {
    position: relative;
}
.bell-new .bell-img {
    position: absolute;
    top:0;
    left: 0;
}
/* 装飾「★」など
-----------------------------------------------------*/
.bell {
    position: relative;
    top: -8px;
    font-size: 10px;
}
/* 別ウィンドウなどのアイコン(js連携)
-----------------------------------------------------*/
.link-icon {
    vertical-align: middle;
    padding-left: 3px;
    padding-right: 5px;
    margin: 0 !important;
}
.link-block > .link-icon {
    position: absolute;
    margin-top: 6px !important;
    display: inline-block;
}
.link-block > a {
    padding-left: 17px;
    display: inline-block;
}
/* PDFなどのアイコン(js非連携)
-----------------------------------------------------*/
.icon-pdf {
background-image: url(/common2/images/link_file_pdf.png);
background-position: 0.2em 0.5em;
background-repeat: no-repeat;
background-size: 0.8em;
padding-left: 1.4em;
}
.icon-link {
background-image: url(/common2/images/arrow_pink_right.png);
background-position: 0.2em 0.7em;
background-repeat: no-repeat;
background-size: 0.4em;
padding-left: 1.1em;
}
.icon-blank {
background-image: url(/common2/images/link_blank_pink.png);
background-position: 0.2em 0.6em;
background-repeat: no-repeat;
background-size: 0.65em;
padding-left: 1.2em;
}
[class^="icon-"].icon-right {
background-position: 100% 0.6em;
padding-left: 0;
padding-right: 1.2em;
}
/* リンクボックス
-----------------------------------------------------*/
.link-box,
.link-box-square {
    box-sizing: border-box;
    color: #666 !important;
    text-decoration: none !important;
}
.link-boxw {
    position: relative;
    line-height: 0;
    border-radius: 5px;
    overflow: hidden;
    display: block;
}
.link-boxw-square {
    position: relative;
    line-height: 0;
    border-radius: 0px;
    overflow: hidden;
    display: block;
}
.link-boxws {
    position: relative;
    line-height: 0;
    border-radius: 0;
    overflow: hidden;
    display: block;
}
.link-boxw .link-img,
.link-boxw-square .link-img {
    position: absolute;
    bottom: 0;
    right: 0;
}
.link-boxw .link-img {
    border-radius: 0 0 5px 0;
}
.link-boxw .link-box {
    display: block;
    overflow: hidden;
    border-radius: 5px;
}
.link-boxw-square .link-box-square {
    display: block;
    overflow: hidden;
    border-radius: 0px;
}
    
.link-boxw .link-box:hover .link-boxi,
.link-boxw-square .link-box-square:hover .link-boxi {
    margin: -3px;
}
.link-boxw .link-box.border:hover .link-boxi,
.link-boxw-square .link-box-square.border:hover .link-boxi {
    margin: -2px;
}
.link-boxw .link-box:hover,
.link-boxw-square .link-box-square:hover {
    border: 3px solid #666 !important;
}
.link-boxw .link-box.hover-lightblue:hover,
.link-boxw-square .link-box-square.hover-lightblue:hover {
        border-color: #0099ff !important;
}
.link-boxw .link-box.hover-pink:hover,
.link-boxw-square .link-box-square.hover-pink:hover {
        border-color: #e4007f !important;
}
/* リンクボックスの一覧
-----------------------------------------------------*/
.list-link-box-square li {
    float: left;
    width: 267px;
    border: 1px solid #c1c1c1;
    padding: 0;
    margin: 0;
    margin-bottom: 0 !important;
    font-size: 14px;
    list-style-type: none;
}
.list-link-box-square li a {
    display: table-cell !important;
    text-align: center;
    width: 277px;
    height: 80px;
    vertical-align: middle;
}
.list-link-box-square li:nth-of-type(2),
.list-link-box-square li:nth-of-type(3) {
    border-left:0;
}
.list-link-box-square li:nth-of-type(4) {
    border-top:0;
}
.list-link-box-square li:nth-of-type(5),
.list-link-box-square li:nth-of-type(6) {
    border-top:0;
    border-left: 0;
}
/* リード文
-----------------------------------------------------*/
.lead-text {
    font-size: 18px;
    margin: 0;
    margin: 10px 0 40px;
    padding: 0;
    border: 0;
    text-align: center;
    color: #2c2c2c;
}
.lead-text2 {
    font-size: 24px;
    margin: 0;
    margin-bottom: 20px;
    padding: 0;
    border: 0;
    text-align: center;
    color: #2c2c2c;
}
.lead-wrapper {
    padding: 0px 0 30px;
}
/* 速度制限注意
-----------------------------------------------------*/
.text-notice {
    font-size: 16px !important;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    text-decoration: underline;
    text-align: center;
}
.text-notice2 {
    display: inline-block;
    background: #def1fe;
    padding: 0 10px;
    text-align: center;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}
/* 金額表示
-----------------------------------------------------*/
.text-camel {
    font-size: 16px;
}
.text-camel .num {
    font-size: 24px;
}
.text-camel.camel-large .num {
    font-size: 40px;
}
.text-price {
    display: inline-block;
    padding: 13px 0 12px;
    color: #e4007f;
}
.text-price .num {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 33px;
    line-height: 100%;
}
.text-price .tail {
    font-size: 14px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}
.text-title {
    color: #e4007f;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 29px;
    padding: 7px 0;
    display: inline-block;
}
/* 税金表示
-----------------------------------------------------*/
.text-tax {
    text-align: right;
}
.text-tax p {
    display: inline-block;
    color: #2c2c2c;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    border: 1px solid #c1c1c1;
    border-radius: 5px;
    padding: 8px 18px;
    margin: 0;
    font-size: 12px;
    text-align: left;
}
.text-tax2 {
    border-radius: 5px;
    border: 1px solid #c1c1c1;
    padding: 3px 5px;
    font-size: 12px;
    color: #2c2c2c;
}
.text-tax3 {
    border-radius: 5px;
    border: 1px solid #c1c1c1;
    padding: 3px 5px;
    font-size: 12px;
    color: #003399;
    margin-bottom: 10px;
}
.text-tax3 p {
    margin-bottom: 0;
}
/* 注釈
-----------------------------------------------------*/
.mark {
    position: relative;
    margin-left: 1.3em;
    list-style-type: none;
    vertical-align: top;
}
.mark:before {
    content: '※';
    position: absolute;
    top: 0;
    left: -1.2em;
    vertical-align: top;
    margin: 0;
    padding: 0;
}
.mark11 {
    position: relative;
    margin-left: 1.3em;
    list-style-type: none;
    font-size: 11px !important;
    vertical-align: top;
}
.mark11:before {
    content: '※';
    position: absolute;
    /* top: 0;*/
    left: -1.2em;
    /*line-height: 100%;*/
    /*line-height: 150%;*/
}
.mark-attn {
    position: relative;
    margin-left: 15px;
    list-style-type: none;
    vertical-align: top;
}
.mark-attn:before {
    content: '注';
    position: absolute;
    top: 0;
    left: -15px;
    vertical-align: top;
    margin: 0;
    padding: 0;
}
.mark-attn11 {
    position: relative;
    margin-left: 13px;
    list-style-type: none;
    font-size: 11px !important;
    vertical-align: top;
}
.mark-attn11:before {
    content: '※';
    position: absolute;
    /* top: 0;*/
    left: -13px;
    /*line-height: 100%;*/
    /*line-height: 150%;*/
}
ol li.mark {
    margin-left: 2.5em !important;
    list-style-type: decimal !important;
}
ol li.mark:before {
    content: '※';
    position: absolute;
    top: 0;
    /* left: -36px; */
    left: -2.4em;
}
ol li.mark11 {
    margin-left: 2.5em !important;
    list-style-type: decimal !important;
}
ol li.mark11:before {
    content: '※';
    position: absolute;
    top: 0;
    left: -2.4em;
}
ol li.mark-attn {
    margin-left: 34px !important;
    list-style-type: decimal !important;
}
ol li.mark-attn:before {
    content: '注';
    position: absolute;
    top: 0;
    left: -36px;
}
ol li.mark-attn11 {
    margin-left: 30px !important;
    list-style-type: decimal !important;
}
ol li.mark-attn11:before {
    content: '注';
    position: absolute;
    top: 0;
    left: -30px;
}
/*
  VISUAL
========================================================================================================*/
.visual {
    overflow: hidden;
    border-radius: 5px;
    margin-bottom: 50px;
}
/*
  PARTS
========================================================================================================*/
/* ボタン
-----------------------------------------------------*/
.btn,.btn:visited,
.btn-gray,.btn-gray:visited,
.btn-darkblue,.btn-darkblue:visited,
.btn-lightblue,.btn-lightblue:visited,
.btn-pink,.btn-pink:visited,
.btn-green,.btn-green:visited,
.btn-anc {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 8px 22px;
    border-radius: 30px;
    text-decoration: none !important;
    vertical-align: top;
    text-align: center;
}
.btn:hover,.btn:visited:hover,
.btn-gray:hover,.btn-gray:visited:hover,
.btn-darkblue:hover,.btn-darkblue:visited:hover,
.btn-lightblue:hover,.btn-lightblue:visited:hover,
.btn-pink:hover,.btn-pink:visited:hover,
.btn-green:hover,.btn-green:visited:hover,
.btn-anc:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: .7;
    text-decoration: none !important;
}
.btn:before,
.btn-gray:before,
.btn-darkblue:before,
.btn-lightblue:before,
.btn-pink:before,
.btn-green:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 11px;
    width: 6px;
    height: 6px;
}
.btn.blank:before,
.btn-gray.blank:before,
.btn-darkblue.blank:before,
.btn-lightblue.blank:before,
.btn-pink.blank:before,
.btn-green.blank:before {
    display: none;
}
.btn.blank .link-img,
.btn-gray.blank .link-img,
.btn-darkblue.blank .link-img,
.btn-lightblue.blank .link-img,
.btn-pink.blank .link-img,
.btn-green.blank .link-img {
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    vertical-align: middle;
    margin: auto;
}
.btn,.btn:visited {
    border: 1px solid #666;
    background: #fff;
    color: #2c2c2c !important;
}
.btn:hover,.btn:visited:hover {
    color: #2c2c2c;
}
.btn:before {
    border-top: 1px solid #666;
    border-right: 1px solid #666;
}
.btn-gray,.btn-gray:visited {
    border: 1px solid #666;
    background: #666;
    color: #fff !important;
}
.btn-gray:hover,.btn-gray:visited:hover {
    color: #fff;
}
.btn-gray:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn-darkblue,.btn-darkblue:visited {
    border: 1px solid #039;
    background: #039;
    color: #fff !important;
}
.btn-darkblue:hover,.btn-darkblue:visited:hover {
    color: #fff;
}
.btn-darkblue:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn-lightblue,.btn-lightblue:visited {
    border: 1px solid #0099ff;
    background: #0099ff;
    color: #fff !important;
}
.btn-lightblue:hover,.btn-lightblue:visited:hover {
    color: #fff;
}
.btn-lightblue:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn-pink,.btn-pink:visited {
    border: 1px solid #e4007f;
    background: #e4007f;
    color: #fff !important;
}
.btn-pink:hover,.btn-pink:visited:hover {
    color: #fff;
}
.btn-pink:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn-green,.btn-green:visited {
    border: 1px solid #0c9b01;
    background: #0c9b01;
    color: #fff !important;
}
.btn-green:hover,.btn-green:visited:hover {
    color: #fff;
}
.btn-green:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn-anc {
    background: #efefef;
    padding: 8px 15px 8px 22px;
    font-size: 11px;
    color:#2c2c2c !important;
}
.btn-anc:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    left: 10px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #2c2c2c;
    border-right: 2px solid #2c2c2c;
}
.btn.l2,
.btn-darkblue.l2,
.btn-lightblue.l2,
.btn-pink.l2,
.btn-green.l2 {
    font-size: 13px;
    padding: 4px 22px 2px;
    line-height: 130%;
}
.btn-medium {
    min-width: 160px;
}
.btn-large {
    min-width: 300px;
    font-size: 14px;
}
/* ログインボタン
-----------------------------------------------------*/
.login-wimax-btn,
.login-mobile-btn,
.login-datacharge-btn {
    position: relative;
    overflow: hidden;
    display: inline-block;
    border: 1px solid #c1c1c1;
    border-radius: 31px;
    background: #fff;
}
.login-wimax-btn a,
.login-mobile-btn a,
.login-datacharge-btn a {
    position: relative;
    display: table;
    width: 330px;
    font-size: 16px;
    color: #fff !important;
    text-decoration: none !important;
}
.login-wimax-btn a:hover,
.login-mobile-btn a:hover,
.login-datacharge-btn a:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: .7;
}
.login-wimax-btn .img,
.login-mobile-btn .img,
.login-datacharge-btn .img {
    display: table-cell;
    padding: 13px 13px 13px 22px;
}
.login-wimax-btn span,
.login-mobile-btn span,
.login-datacharge-btn span {
    display: table-cell;
    width: 246px;
    height: 60px;
    vertical-align: middle;
    text-align: center;
}
.login-wimax-btn span {
    background: #0099ff;
}
.login-mobile-btn span,
.login-datacharge-btn span {
    background: #e4007f;
}
.login-wimax-btn .link-img,
.login-mobile-btn .link-img,
.login-datacharge-btn .link-img {
    position: absolute;
    right: 17px;
    top:0;
    bottom:0;
    margin: auto;
}
/* ボタングループ
-----------------------------------------------------*/
.foot-btn {
    text-align: center;
    margin-bottom: 40px;
}
.foot-btn .foot-btn-list {
    margin-bottom: 30px;
    text-align: center;
}
.foot-btn .foot-btn-list li {
    display: inline-block;
    margin: 0 5px;
    text-align: center;
    list-style-type: none;
}
.foot-btn .foot-btn-list li .btn-green {
        font-size: 14px;
        padding: 15px 22px;
}
.foot-btn .foot-btn-list li .btn-green.l2 {
    padding: 8px 22px 8px;
}
/* テーブル
-----------------------------------------------------*/
table.table-large {
    font-size: 16px;
}
table.table-large th,
table.table-large td {
    padding: 20px 10px;
}
table.table-blue th {
    background: #def1fe;
    border-bottom: 1px solid #def1fe;
}
table.table-pink th {
    background: #FCE5F2;
    border-bottom: 1px solid #FCE5F2;
}
table.table-row thead th {
    width: auto;
    border: 1px solid #c1c1c1;
}
table.table-row thead th:last-child {
    border: 0;
}
table.table-row th {
    width: 25%;
    border: 1px solid #c1c1c1;
}
table tr.text-middle th,
table tr.text-middle td {
    vertical-align: middle;
}
table th.font-large,
table td.font-large {
    font-size: 20px;
}
table th.font-medium,
table td.font-medium {
    font-size: 16px;
}
table th.font-small,
table td.font-small {
    font-size: 12px;
}
table [class^="table-title"] {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    position: relative;
    color: #585858;
    font-size: 15px;
    padding-left: 17px;
    padding-bottom: 5px;
    margin-top: 10px;
    margin-bottom: 20px;
    border-bottom: 3px solid #666;
}
table [class^="table-title"]:before {
    content: '';
    overflow: hidden;
    position: absolute;
    width: 8px;
    top: 0;
    bottom: 5px;
    left: 0;
    background: #666;
    border-radius: 5px;
}
table .table-title-lightblue {
    border-bottom: 3px solid #0099ff;
}
table .table-title-lightblue:before {
    background: #0099ff;
}
table .table-title-pink {
    border-bottom: 3px solid #e4007f;
}
table .table-title-pink:before {
    background: #e4007f;
}
/* 告知枠
-----------------------------------------------------*/
.extboard-wimax,
.extboard-mobile {
    padding-bottom: 20px;
}
article .appeal {
    margin-bottom: 10px;
}
article .appeal .heading {
    color: #0099ff;
    font-size: 24px;
    text-align: center;
    line-height: 1;
    margin-bottom: 25px;
}
article .appeal ul li {
    list-style-type: none;
}
article .appeal ul li .head {
    background: #46bcf2;
    border-radius: 5px 5px 0 0;
}
article .extboard-mobile .appeal ul li .head {
    background: #f354a4;
}
article .appeal ul li .head .title {
    color: #fff;
    font-size: 18px;
    text-align: center;
    line-height: 120%;
    padding: 16px 10px;
}
article .appeal ul li .head .title.l2 {
    padding: 8px 10px;
}
article .appeal ul li .link-boxw,
article .appeal ul li .link-boxw .link-box {
    border-radius: 0 0 5px 5px;
    border-color: #46bcf2;
}
article .extboard-mobile .appeal ul li .link-boxw,
article .extboard-mobile .appeal ul li .link-boxw .link-box {
    border-color: #f354a4;
}
article .appeal-note {
    margin-bottom: 20px;
    margin-left: 0;
    list-style-type: none;
}
article .appeal-note li {
    list-style: none;
    margin-bottom: 0px;
    margin-left: 0;
}
article .appeal-note * {
    font-size: 10px !important;
}
article .boost {
    background: #fff;
    border-radius: 5px;
    margin: 40px 0 10px;
    padding: 27px;
}
article .extboard-wimax .boost {
    border: 2px solid #46bcf2;
}
article .extboard-mobile .boost {
    border: 2px solid #f354a4;
}
#top article .boost {
    background: #efefef;
    border: none;
    margin-top: 50px;
    padding-bottom: 40px;
}
article .boost .title {
    font-size: 21px;
    color: #2c2c2c;
    text-align: center;
}
article .boost ul {
    margin-top: 20px;
    margin-bottom: 0;
}
article .boost ul li {
    position: relative;
    float: left;
    list-style-type: none;
    width: 294px;
    margin: 0 20px 0 0;
}
#top article .boost ul li {
    margin-right: 22px;
}
article .boost ul li:last-of-type,
#top article .boost ul li:last-of-type {
    margin-right: 0px;
}
article .boost ul li .icon {
    position: absolute;
    top: -10px;
    left: -4px;
    z-index: 1;
}
article .extboard-wimax .boost ul li .link-boxw,
article .extboard-wimax .boost ul li .link-boxw .link-box {
    border-color: #46bcf2;
}
article .extboard-mobile .boost ul li .link-boxw,
article .extboard-mobile .boost ul li .link-boxw .link-box {
    border-color: #f354a4;
}

/* QAトグル02
-----------------------------------------------------*/
.qa-list-02{
    list-style: none;
}
.qa-list-02 .js-toggle-hook{
    position: static;
    border: none;
    padding: 15px 55px;
    margin: 0;
}
.qa-list-02 .js-toggle-content{
  padding-bottom: 0;
}
.qa-list-02 > li{
    margin-left: 0;
    margin-top: 10px;
    border-radius: 5px;
}
.qa-list-02.wimax > li{
    background: #ebf7ff;
}
.qa-list-02.mobile > li{
    background: #fcedf4;
}
.qa-list-02 > li:first-child{
    margin-top: 0;
}
.qa-list-02 .question,
.qa-list-02 .answer{
    position: relative;
    box-sizing: border-box;
}
.qa-list-02 .question{
    font-weight: bold;
    font-size: 18px;
}
.qa-list-02 .answer{
    padding: 15px 15px 15px 55px;
}
.qa-list-02 .answer :last-child{
    margin-bottom: 0;
}
.qa-list-02 .icon-qa{
    position: absolute;
    left: 15px;
    top: 1em;
}

/* トグル
-----------------------------------------------------*/
.toggle-list {
    overflow: hidden;
    border-radius: 5px;
    margin-bottom: 40px;
}
.toggle-list dt {
    position: relative;
    background: #fff;
    font-size: 14px;
    border-top: 1px solid #c1c1c1;
}
.toggle-list dt:first-child {
    border: 0;
}
.toggle-list dt a {
    display: block;
    background: url(/common2/images/qa_q.png) no-repeat 25px 20px;
    padding: 25px 80px 25px 80px;
    color: #2c2c2c !important;
    text-decoration: none !important;
}
.toggle-list .icon-toggle {
    position: absolute;
    display: block;
    width: 38px;
    height: 38px;
    border: 1px solid #666;
    border-radius: 50%;
    right: 20px;
    top: 15px;
}
.toggle-list .icon-toggle:before {
    position: absolute;
    top: 10px;
    bottom: 0;
    left: 0px;
    right: 0;
    margin: 0;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(80deg);
    transform: rotate(90deg);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 2px solid #666;
    width: 20px;
    height: 20px;
}
.toggle-list .icon-toggle:after {
    position: absolute;
    top: 20px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    border-left: 2px solid #666;
    width: 20px;
    height: 20px;
}
.toggle-list .open .icon-toggle:before {
    display: none;
}
.toggle-list dd {
    display: none;
    background:#f0f0f0 url(/common2/images/qa_a.png) no-repeat 25px 20px;
    padding: 25px 25px 25px 80px;
    font-size: 14px;
}
/* トグルフィールド
-----------------------------------------------------*/
.toggle-handle {
    position: relative;
    cursor: pointer;
}
.toggle-handle .icon-toggle {
    position: absolute;
    display: block;
    width: 26px;
    height: 26px;
    border: 1px solid #fff;
    border-radius: 50%;
    right: 12px;
    top: 0px;
    bottom: 0;
    margin: auto;
}
.toggle-handle .icon-toggle:before {
    position: absolute;
    top: 5px;
    bottom: 0;
    left: -2px;
    right: 0;
    margin: 0;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(80deg);
    transform: rotate(90deg);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 2px solid #fff;
    width: 16px;
    height: 16px;
}
.toggle-handle .icon-toggle:after {
    position: absolute;
    top: 13px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    border-left: 2px solid #fff;
    width: 16px;
    height: 16px;
}
.toggle .toggle-body {
    display: none;
}
.toggle.open .icon-toggle:before {
    display: none;
}
.toggle.open .toggle-body {
    display: block;
}
/*------ トグルエリア --------*/
.wrapt {
    /*margin: 0 -10px 30px;*/
    margin: 0 0px 30px;
    border: 1px solid #c1c1c1;
    border-radius: 30px;
}
.wrapt .head {
    border: 0 !important;
}
.wrapt .title {
    font-size: 16px;
    margin: 0;
    padding: 0;
    border: 0;
}
.wrapt .title a {
    position: relative;
    display: block;
    text-align: center;
    padding: 18px;
    color: #666 !important;
    text-decoration: none !important
}
.wrapt .ind {
    padding: 0 40px 25px;
}
.wrapt .list-inline {
    list-style-type: none;
    margin-bottom: 25px;
}
.wrapt .list-inline li {
    float: left;
    width: 267px;
    border: 1px solid #c1c1c1;
    list-style-type: none;
    padding: 0;
    margin: 0;
    margin-bottom: 0 !important;
} 
.wrapt .list-inline li:nth-of-type(2),
.wrapt .list-inline li:nth-of-type(3) {
    border-left:0;
}
.wrapt .list-inline li:nth-of-type(4) {
    border-top:0;
}
.wrapt .list-inline li:nth-of-type(5),
.wrapt .list-inline li:nth-of-type(6) {
    border-top:0;
    border-left: 0;
}
.wrapt .list-inline li a {
    display: table-cell;
    text-align: center;
    width: 277px;
    height: 80px;
    vertical-align: middle;
}
.wrapt .note {
    font-size: 11px;
}
.toggle-wrapt .icon-toggle {
    position: absolute;
    display: block;
    width: 38px;
    height: 38px;
    border: 1px solid #666;
    border-radius: 50%;
    right: 12px;
    top: 10px;
}
.toggle-wrapt .icon-toggle:before {
    position: absolute;
    top: 10px;
    bottom: 0;
    left: 0px;
    right: 0;
    margin: 0;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(80deg);
    transform: rotate(90deg);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 2px solid #666;
    width: 20px;
    height: 20px;
}
.toggle-wrapt .icon-toggle:after {
    position: absolute;
    top: 20px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    content: "";
    vertical-align: middle;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    border-left: 2px solid #666;
    width: 20px;
    height: 20px;
}
.toggle-wrapt .open .icon-toggle:before {
    display: none;
}
.toggle-content.close {
    display: none;
}
/* トグルヘッダなし */
.wrapt.nohandle {
    padding-top:35px;
}
.wrapt.nohandle .title {
    text-align: center;
    margin-bottom: 15px;
}
/* STEP表示
-----------------------------------------------------*/
[class^="steps-row"],
[class^="steps-col"] {
    width: 100%;
    margin-bottom: 20px;
}
[class^="steps-row"] > .head,
[class^="steps-col"] > .head {
    background: #666;
    padding: 10px;
    margin-bottom: 20px;
}
.steps-row-blue-lite > .head,
.steps-col-blue-lite > .head { background: #0099ff; }
.steps-row-pink > .head,
.steps-col-pink > .head { background: #e4007f; }
.steps-row-orange > .head,
.steps-col-orange > .head { background: #f15907; }
[class^="steps-row"] > .head .title,
[class^="steps-col"] > .head .title {
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    border: 0;
    margin: 0;
    padding: 0;
    text-align: center;
}
[class^="steps-row"] > .head .title .small,
[class^="steps-col"] > .head .title .small {
    font-size: 14px;
}
[class^="steps-row"] > .ind,
[class^="steps-col"] .ind {
    position: relative;
    border: 1px solid #666;
    margin-bottom: 20px;
}
.steps-row-blue-lite .ind,
.steps-col-blue-lite .ind { border-color:#0099ff; }
.steps-row-pink .ind,
.steps-col-pink .ind { border-color:#e4007f; }
.steps-row-orange .ind,
.steps-col-orange .ind { border-color:#f15907; }
[class^="steps-row"] > .ind:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -24px;
    width: 0;
    height: 0;
    border: 12px solid transparent;
    border-top: 12px solid #666;
    margin: auto;
}
.steps-row-blue-lite .ind:before { border-top: 12px solid #0099ff; }
.steps-row-pink .ind:before { border-top: 12px solid #e4007f; }
.steps-row-orange .ind:before { border-top: 12px solid #f15907; }
[class^="steps-col"] .ind:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -25px;
    width: 0;
    height: 0;
    border: 12px solid transparent;
    border-left: 12px solid #666;
    margin: auto;
}
.steps-col-blue-lite .ind:before { border-left: 12px solid #0099ff; }
.steps-col-pink .ind:before { border-left: 12px solid #e4007f; }
.steps-col-orange .ind:before { border-left: 12px solid #f15907; }
[class^="steps-row"] > .ind:last-of-type:before {
    display: none;
}
.fields-layout .fields .field [class^="steps-row"] [class^="steps-col"] .col-2 {
    width: 438px;
}
.fields-layout .fields .field [class^="steps-row"] [class^="steps-col"] .col-3 {
    width: 283px;
}
.fields-layout .fields .field [class^="steps-row"] [class^="steps-col"] .col-4 {
    width: 209px;
}
.fields-layout .fields .field [class^="steps-row"] [class^="steps-col"] .col-5 {
    width: 163px;
}
[class^="steps-col"] .col-2:last-of-type .ind:before,
[class^="steps-col"] .col-3:last-of-type .ind:before,
[class^="steps-col"] .col-4:last-of-type .ind:before,
[class^="steps-col"] .col-5:last-of-type .ind:before {
    display: none;
}
[class^="steps-row"] .ind .indi,
[class^="steps-col"] .ind .indi {
    padding: 15px 15px 5px 15px;
    border-top: 1px solid #666;
}
[class^="steps-row"] .ind .indi:first-of-type,
[class^="steps-col"] .ind .indi:first-of-type {
    border-top: 0;
}
.steps-row-blue-lite .ind .indi,
.steps-col-blue-lite .ind .indi { border-color:#0099ff; }
.steps-row-pink .ind .indi,
.steps-col-pink .ind .indi { border-color:#e4007f; }
.steps-row-orange .ind .indi,
.steps-col-orange .ind .indi { border-color:#f15907; }
[class^="steps-row"] .ind > .head {
    width: 100%;
    display: table;
} 
[class^="steps-row"] .ind > .head span {
    display: table-cell;
    padding: 5px 10px;
    vertical-align: top;
}
[class^="steps-col"] .ind > .head span {
    display: block;
    padding: 5px 10px;
    vertical-align: top;
}
[class^="steps-row"] .ind > .head .num {
    background: #666;
    width: 1%;
    white-space: nowrap;
    color: #fff;
    font-size: 14px;
    padding-top: 8px;
}
[class^="steps-col"] .ind > .head .num {
    background: #666;
    color: #fff;
    width: 100%;
    box-sizing: border-box;
    font-size: 14px;
    padding-top: 5px;
}
.steps-row-blue-lite .ind > .head .num,
.steps-col-blue-lite .ind > .head .num { background-color:#0099ff; }
.steps-row-pink .ind > .head .num,
.steps-col-pink .ind > .head .num { background-color:#e4007f; }
.steps-row-orange .ind > .head .num,
.steps-col-orange .ind > .head .num { background-color:#f15907; }
[class^="steps-row"] .ind > .head .text,
[class^="steps-col"] .ind > .head .text {
    background: #dde8ff;
    font-size: 18px;
}
.steps-row-blue-lite .ind > .head .text,
.steps-col-blue-lite .ind > .head .text { background: #E5F5FF; }
.steps-row-pink .ind > .head .text,
.steps-col-pink .ind > .head .text { background: #FCE5F2; }
.steps-row-orange .ind > .head .text,
.steps-col-orange .ind > .head .text { background: #ffe6d8; }
/* 検索フィールド
-----------------------------------------------------*/
.search-field {
    padding: 10px 0 40px;
}
.search-field form {
    position: relative;
}
.search-field form:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 20px;
    overflow: hidden;
    white-space: nowrap;
    text-indent: -9999px;
    width: 16px;
    height: 16px;
    border: none;
    background: url(/common2/images/search_btn.png) no-repeat left top;
}
.search-field input[type=text] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
        
    border-radius: 30px;
    border: 1px solid #c1c1c1;
    padding: 10px 20px 10px 50px;
    line-height: 130%;
    width: 88%;
}
.search-field button {
    float: right;
    width: 10%;
}
.search-field button.btn-gray:before {
    display: none;
}
.search-field-keywords dl {
    margin-bottom: 20px;
}
.search-field-keywords dl dt,
.search-field-keywords dl dd {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
/* よくある質問
-----------------------------------------------------*/
.faqs {
    margin-bottom: 40px;
}
.faq-list-q {
    margin-top: 10px;
    margin-bottom: 40px;
}
.faq-list-q li {
    position: relative;
    list-style-type: none;
    padding-left: 50px;
    padding-top: 6px;
    margin-bottom: 20px;
    margin-left: 0px;
}
.faq-list-q li .icon {
    position: absolute;
    top: 0px;
    left: 0;
}
.faq-field {
    margin-top: 10px;
    margin-bottom: 60px;
}
.faq-field .head {
    border: 0 !important;
    margin-bottom: 40px;
}
.faq-field .head .title {
    position: relative;
    color: #2c2c2c;
    font-size: 20px;
    border: 0;
    padding-left: 38px;
}
.faq-field .head .title .icon {
    position: absolute;
    top:0;
    left: 0;
}
.faq-field .ind {
    position: relative;
    background: #F1F1F1;
    border-radius: 5px;
    padding: 30px 90px 15px;
}
.faq-field .ind * {
    font-size: 16px !important;
}
.faq-field .ind .date {
    text-align: right;
    font-size: 12px !important;
     margin-right: -60px;
}
.faq-field .ind .icon {
    position: absolute;
    top: 21px;
    left: 34px;
}
/* アンケート機能
-----------------------------------------------------*/
.questionnaire-field {
    position: relative;
    border: 1px solid #c1c1c1;
    border-radius: 5px;
    padding: 40px 130px 0;
}
.questionnaire-field .head {
    border: 0 !important;
}
.questionnaire-field .title {
    display: inline-block;
    position: absolute;
    top: -0.7em;
    left: 0;
    right: 0;
    padding: 0;
    margin: auto;
    text-align: center;
    font-size: 16px;
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}
.questionnaire-field .title span {
    background: #fff;
    padding: 0 20px;
}
.questionnaire-field .ind p,
.questionnaire-field .ind ol li {
    font-size: 16px;
}
.questionnaire-field .ind ol {
    margin-top: 50px;
    list-style-type: none;
}
.questionnaire-field .ind ol li {
    font-family: "新ゴ M","Shin Go Medium","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    margin-left: 0;
    margin-bottom: 25px;
}
.questionnaire-field .ind ol li span {
    font-family: "新ゴ R","Shin Go Regular","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
    font-size: 14px;
}
.questionnaire-field .ind ol li .checkbox {
    margin-left: 20px;
    margin-top: 10px;
}
.questionnaire-field .ind ol li .checkbox input {
    margin-right: 8px;
}
.questionnaire-field .ind ol li .checkbox label {
    display: inline-block;
    width: 25%;
    font-family: "新ゴ R","Shin Go Regular","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}
.questionnaire-field .ind ol li textarea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    
    padding: 5px;
    width: 100%;
    height: 7em;
    margin-top: 15px;
}
.questionnaire-field .ind .msg{
    margin-bottom: 40px;
    text-align: center;
}
/* お問い合わせ
-----------------------------------------------------*/
/* box-contact-01
---------------------------------------------------*/
.box-contact-01 {
    background: none!important;
    position: relative; 
    border: 1px solid #c1c1c1;
    border-radius: 10px;
    padding: 20px 20px 25px!important;
}
.box-contact-01 h2 {
    font-size: 13px;/*100%;*/
    display: block;
    vertical-align: middle; 
    background: none!important;
    border-bottom: 1px solid #c1c1c1;
    border-radius: 0;
    color: #585858;
    margin: 0 0 20px!important;
    padding: 0!important;
}
.box-contact-01 .col {
    float: none!important;
    height: auto!important;
}
.box-contact-01 .col h3 {
    font-size: 12px;/*100%;*/
    float: none;
    border: none;
    margin: 0 0 10px;
    padding: 0; 
    color: #585858;
}
.box-contact-01 .col:last-child h3 {
    margin: 0 0 10px;
}
.box-contact-01 p {
    margin-bottom: 0;
    font-size: 12px;
}
.box-contact-01 .col .doc-lead-01 {
    font-size: 19px;/*158.3%;*/
    font-weight: bold;
    color: #003399;
    margin: 0;
}
.box-contact-01 .list-notice-01 {
    position: static;
    top: 0;
    right: 0;
    margin: 10px 0 0!important;
    list-style: none!important;
}
.box-contact-01 .list-notice-01 li {
    margin-left: 0;
    padding-left: 0;
}
.box-contact-01 .list-notice-01.num li {
    font-size: 10px;/*83.3%;*/
    margin-left: 0;
    padding-left: 0;
}
.box-contact-01 .col:last-child {
    margin: 0;
}
/* box-contact-02
---------------------------------------------------*/
.box-contact-02{
    border: 1px solid #c1c1c1;
    border-radius: 5px;
    padding: 20px 20px 25px;
}
.box-contact-02 h2 {
    border-bottom: 1px solid #c1c1c1;
    color: #585858;
    margin: 0 0 20px;
    padding: 0;
    font-size: 13px;
}
.box-contact-02 h3 {
    color: #585858;
    margin: 0 0 10px;
    padding: 0;
    font-size: 12px;
}
.box-contact-02 p {
    margin: 0;
    padding: 0;
    font-size: 12px;
}
.box-contact-02 .link {
    color: #003399;
}
.box-contact-02 ul {
    list-style: none;
    margin: 10px 0 0;
    padding: 0;
}
.box-contact-02 ul li {
    margin: 0;
    padding: 0;
    font-size: 12px;
}
.box-contact-02 .large {
    font-size: 19px;/*158.3%;*/
    line-height: 1.3;
}
.box-contact-02 .note {
    font-size: 10px;/*83.3% */
}
/* PC
---------------------------------------------------*/
/* SP
---------------------------------------------------*/
/* お申し込みはこちら（SSI）
-----------------------------------------------------*/
/* POINT & FAQ のセット表示
-----------------------------------------------------*/
.point-faq-area {
    margin-bottom: 20px;
}
.point-faq-area dl {
    position: relative;
    margin-bottom: 20px;
}
.point-faq-area dl dt {
    /*
    position: absolute;
    top: 0;
    left: 0;
    */
    margin-bottom: 10px;
}
.point-faq-area dl dd {
    /*
    position: relative;
    padding-left: 120px;
    padding-top: 2px;
    */
    color: #e4007f;
}
.point-faq-area dl dd .faq-area {
    position: relative;
    padding-left: 40px;
    min-height: 31px;
    margin-bottom: 10px;
    color: #212121;
}
.point-faq-area dl dd .icon {
    position: absolute;
    top: -5px;
    left: 0;
}
/* FAQ のリスト表示
-----------------------------------------------------*/
.faq-list-set {
    margin-bottom: 30px;
}
.faq-list-set dt .icon,
.faq-list-set dd .icon {
    position: absolute;
    top: -5px;
    left: 0;
}
.faq-list-set dt,
.faq-list-set dd {
    position: relative;
    padding-left: 40px;
    min-height: 31px;
    margin-bottom: 10px;
    color: #212121;
}
/* 日付リスト表示
-----------------------------------------------------*/
.date-list dl {
    margin-bottom: 20px;
}
.date-list dl dt {
    float: left;
    width: 7.5em;
    line-height: 150%;
}
.date-list dl dd {
    padding-left: 7.5em;
    line-height: 150%;
    margin-bottom: 25px;
}
.date-list dl dd a { line-height: 150% }
/* 吹き出し表示
-----------------------------------------------------*/
.balloon-list dl dt,
.balloon-list dl dd {
    display: table;
}
.balloon-list dl dt {
    margin-bottom: 20px;
}
.balloon-list dl dd {
    margin-bottom: 40px;
}
.balloon-list dl dt .text,
.balloon-list dl dt .img,
.balloon-list dl dd .text,
.balloon-list dl dd .img {
    display: table-cell;
    vertical-align: top;
}
.balloon-list dl dt .img,
.balloon-list dl dd .img {
    min-width: 80px;
    height: auto;
}
.balloon-list dl dt .text {
    padding-rihgt: 20px;
}
.balloon-list dl dt .text [class^="balloon"] {
    position: relative;
    background: #DDE8FF;
    border-radius: 5px;
    padding: 20px 20px 5px 20px;
    color: #666;
}
.balloon-list dl dt .text [class^="balloon"]:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -20px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 10px solid #DDE8FF;
    margin: auto;
    transform: scale(1, 0.7);
}
.balloon-list dl dt .text .balloon-lightblue {
    background: #E5F5FF;
    color: #0099ff;
}
.balloon-list dl dt .text .balloon-lightblue:before {
    border-left: 10px solid #E5F5FF;
}
.balloon-list dl dt .text .balloon-pink {
    background: #FCE5F2;
    color: #e4007f;
}
.balloon-list dl dt .text .balloon-pink:before {
    border-left: 10px solid #FCE5F2;
}
.balloon-list dl dd .text {
    padding-left: 20px;
}
.balloon-list dl dd .text .balloon {
    position: relative;
    background: #F6F6F6;
    border-radius: 5px;
    padding: 20px 20px 5px 20px;
}
.balloon-list dl dd .text .balloon:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: -20px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-right: 10px solid #F6F6F6;
    margin: auto;
    transform: scale(1, 0.7);
}
/*
  JQUERY
========================================================================================================*/
/* スライダー
-----------------------------------------------------*/
.slider-visual{
margin: 0;
margin-top: 20px;
}
.slider-visual li{
margin: 0;
list-style-type: none;
}
.slider-visual-nav{
position: relative;
margin: 0 auto;
padding: 12px 0;
width: 600px;
}
.slider-visual-nav li{
margin: 0;
list-style-type: none;
}
.slider-visual-nav .slick-slide{
overflow : hidden;
outline : none;
cursor: pointer;
}
.slider-visual-nav .slick-slide img{
margin: 0 auto;
border: 2px solid #fff;
border-radius: 2px;
}
.slider-visual-nav .slick-slide.slick-current.slick-active img{
border: 2px solid #666;
}
.slider-visual-nav .arrow-wrapper{
position: absolute;
top: 25px;
right: 0;
left: 0;
z-index: 100;
margin: 0 auto;
text-align: center;
}
.slider-visual-nav .arrow-wrapper .prev,
.slider-visual-nav .arrow-wrapper .next{
width: 26px;
height: 26px;
border-radius: 30px;
background: #666;
text-indent: -9999px;
cursor: pointer;
}
.slider-visual-nav .arrow-wrapper .prev{
position: absolute;
left: -30px;
}
.slider-visual-nav .arrow-wrapper .next{
position: absolute;
right: -30px;
}
.slider-visual-nav .arrow-wrapper .next:before{
position: absolute;
top: 0;
right: 11px;
bottom: 0;
margin: auto;
width: 6px;
height: 6px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
content: "";
vertical-align: middle;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.slider-visual-nav .arrow-wrapper .prev:before{
position: absolute;
top: 0;
bottom: 0;
left: 10px;
margin: auto;
width: 6px;
height: 6px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
content: "";
vertical-align: middle;
-webkit-transform: rotate(225deg);
-ms-transform: rotate(225deg);
transform: rotate(225deg);
}
.slider-column{
margin: 0 20px;
padding: 0;
}
.slider-column li{
width: auto;
list-style-type: none;
}
.slider-column .slick-slide{
margin: 0 5px;
}
.slider-column .slide{
margin: 0 auto;
padding: 0 0px;
max-width: 230px;
}
.slider-column .prev{
position: absolute;
top: 0;
bottom: 0;
left: -20px;
z-index: 1;
display: inline-block !important;
width: 30px;
}
.slider-column .prev:before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
width: 16px;
height: 16px;
border-bottom: 2px solid #666;
border-left: 2px solid #666;
content: "";
vertical-align: middle;
cursor: pointer;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.slider-column .next{
position: absolute;
top: 0;
right: -20px;
bottom: 0;
z-index: 1;
display: inline-block !important;
width: 30px;
}
.slider-column .next:before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
width: 16px;
height: 16px;
border-top: 2px solid #666;
border-right: 2px solid #666;
content: "";
vertical-align: middle;
cursor: pointer;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.slider-column .slick-dots{
position: absolute;
right: 0;
bottom: -25px;
left: 0;
z-index: 1;
margin: 0 auto 7px;
text-align: center;
}
.slider-column .slick-dots li{
display: inline-block;
margin: 0 5px;
list-style-type: none;
}
.slider-column .slick-dots li button{
display: inline-block;
width: 20px;
height: 4px;
outline: none;
border: 0;
border-radius: 2px;
background: #0092d7;
color: transparent;
font-size: 0;
line-height: 0;
cursor: pointer;
}
.slider-column .slick-dots li.slick-active button{
background: #e4007f;
}
/* YouTubeカルーセル
-----------------------------------------------------*/
.js-carousel{
position: relative;
}
.js-carousel-panels-wrap{
margin: 0 auto;
width: 748px;
}
.js-carousel-panels-wrap.is-active{
overflow: hidden;
position: relative;
}
.js-carousel-img{
position: relative;
display: block;
}
.js-carousel-img:before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: block;
margin: auto;
width: 68px;
height: 48px;
background-image: url(/common2/images/icon_youtube_play.png);
background-size: cover;
background-repeat: no-repeat;
content: "";
opacity: .8;
}
.js-carousel-img:hover:before,
.js-carousel-img:focus:before{
background-image: url(/common2/images/icon_youtube_play_o.png);
opacity: 1;
}
.carousel-title{
text-align: center;
font-size: 16px;
}
.carousel-panels{
margin-bottom: 0;
list-style: none;
}
.js-carousel-panels-wrap.is-active .carousel-panels{
position: absolute;
top: 0;
}
.carousel-panels li{
float: left;
margin-bottom: 0;
text-align: center;
}
.carousel-panels .movie iframe{
width: 748px;
height: 421px;
vertical-align: top;
}
.carousel-panels .movie-caption{
display: none;
}
.carousel-thumbnail{
margin: 30px auto;
width: 748px;
}
.carousel-thumbnail li{
float: left;
box-sizing: border-box;
margin-left: 8px;
padding: 10px 10px 0;
width: 181px;
border-radius: 5px;
background: #ebebeb;
list-style: none;
text-align: center;
}
.carousel-thumbnail li:first-child{
margin-left: 0;
}
.carousel-thumbnail li.current{
background-color: #e3007f;
}
.carousel-thumbnail li .area-title{
display: table;
width: 100%;
height: 60px;
}
.carousel-thumbnail.tall li .area-title{
height: 80px;
}
.carousel-thumbnail li .title{
display: table-cell;
color: #039;
vertical-align: middle;
font-weight: normal;
font-size: 13px;
line-height: 1.5;
}
.carousel-thumbnail li.current .title{
color: #fff;
}
.carousel-thumbnail li a{
text-decoration: none;
}
.carousel-nav{
list-style-type: none;
}
.carousel-nav li{
position: absolute;
right: 0;
bottom: 400px;
left: 0;
margin: auto;
width: 36px;
height: 36px;
}
.carousel-nav li.prev{
left: -840px;
}
.carousel-nav li.next{
right: -840px;
}
.carousel-panels:after,
.carousel-thumbnail:after,
.carousel-nav:after{
display: block;
clear: both;
content: "";
}
.banner-area{
padding-bottom:40px;
background: #f5f5f5;
border-top: 1px solid #dbdbdb;
}

/* ticker banner
-----------------------------------------------------*/
#ticker-bnr{
display: none;
background: #666;
}
#ticker-bnr .ticker-bnr-wrap{
position: relative;
max-width: 980px;
margin: 0 auto;
padding-right: 38px;
box-sizing: border-box;
}
#ticker-bnr .ticker-link{
display: block;
padding: 10px 0;
color: #fff;
text-decoration: none;
}
#ticker-bnr .text{
text-align: center;
}
#ticker-bnr .underline{
text-decoration: underline;
}
#ticker-bnr .underline:hover{
text-decoration: none;
}
#ticker-bnr .btn-close{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
width: 18px;
height: 18px;
margin: auto 0;
padding: 0;
border: 1px solid #fff;
border-radius: 3px;
background: transparent;
cursor: pointer;
-webkit-appearance: none;
appearance: none;
z-index: 1;
}
#ticker-bnr .btn-close:hover{
opacity: .5;
}
#ticker-bnr .btn-close::before,
#ticker-bnr .btn-close::after{
position: absolute;
content: '';
display: block;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
width: 70%;
height: 1px;
background: #fff;
}
#ticker-bnr .btn-close::before{
transform: rotate(45deg);
}
#ticker-bnr .btn-close::after{
transform: rotate(-45deg);
}
#ticker-bnr .hidden-txt{
pointer-events: none;
color: transparent;
position: absolute;
z-index: -1;
}