@charset "utf-8";


/*================================================
　汎用
================================================ */

html {
  width: 100%;
  color: #333;
  font-size: 62.5%;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

body {
  width: 100%;
/*  min-width: 1250px;*/
  font-size: 1em;
}

li {list-style: none;}

img {
  width: 100%;
  vertical-align: top;
}

a:link    {color: #333;text-decoration: none;}
a:visited {color: #333;text-decoration: none;}
a:hover   {color: #333;text-decoration: none;}
a:active  {color: #333;text-decoration: none;}

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

.f_l {float: left;}
.f_r {float: right;}

.ma5  {margin: 5px;}
.ma10 {margin: 10px;}
.ma15 {margin: 15px;}
.ma20 {margin: 20px;}

.mt5  {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt15 {margin-top: 15px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.mt35 {margin-top: 35px;}
.mt40 {margin-top: 40px;}
.mt50 {margin-top: 50px;}
.mt60 {margin-top: 60px;}

.m .s-mt5 ,
.s .s-mt5 {margin-top: 5px;}
.m .s-mt10 ,
.s .s-mt10 {margin-top: 10px;}
.m .s-mt15 ,
.s .s-mt15 {margin-top: 15px;}
.m .s-mt20 ,
.s .s-mt20 {margin-top: 20px;}
.m .s-mt30 ,
.s .s-mt30 {margin-top: 30px;}
.m .s-mt35 ,
.s .s-mt35 {margin-top: 35px;}
.m .s-mt40 ,
.s .s-mt40 {margin-top: 40px;}
.m .s-mt50 ,
.s .s-mt50 {margin-top: 50px;}
.m .s-mt60 ,
.s .s-mt60 {margin-top: 60px;}

.ml5  {margin-left: 5px;}
.ml10 {margin-left: 10px;}
.ml15 {margin-left: 15px;}
.ml20 {margin-left: 20px;}

.mb5  {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb15 {margin-bottom: 15px;}
.mb20 {margin-bottom: 20px;}
.mb25 {margin-bottom: 25px;}
.mb30 {margin-bottom: 30px;}
.mb35 {margin-bottom: 35px;}
.mb40 {margin-bottom: 40px;}
.mb45 {margin-bottom: 45px;}
.mb50 {margin-bottom: 50px;}
.mb55 {margin-bottom: 55px;}
.mb60 {margin-bottom: 60px;}
.mb65 {margin-bottom: 65px;}
.mb70 {margin-bottom: 70px;}
.mb75 {margin-bottom: 75px;}
.mb80 {margin-bottom: 80px;}
.mb85 {margin-bottom: 85px;}
.mb90 {margin-bottom: 90px;}
.mb95 {margin-bottom: 95px;}
.mb100 {margin-bottom: 100px;}

.m .s-mb5  {margin-bottom: 5px;}
.m .s-mb10 {margin-bottom: 10px;}
.m .s-mb15 {margin-bottom: 15px;}
.m .s-mb20 {margin-bottom: 20px;}
.m .s-mb25 {margin-bottom: 25px;}
.m .s-mb30 {margin-bottom: 30px;}
.m .s-mb35 {margin-bottom: 35px;}
.m .s-mb40 {margin-bottom: 40px;}
.m .s-mb45 {margin-bottom: 45px;}
.m .s-mb50 {margin-bottom: 50px;}
.m .s-mb55 {margin-bottom: 55px;}
.m .s-mb60 {margin-bottom: 60px;}
.m .s-mb65 {margin-bottom: 65px;}
.m .s-mb70 {margin-bottom: 70px;}
.m .s-mb75 {margin-bottom: 75px;}
.m .s-mb80 {margin-bottom: 80px;}
.m .s-mb85 {margin-bottom: 85px;}
.m .s-mb90 {margin-bottom: 90px;}
.m .s-mb95 {margin-bottom: 95px;}
.m .s-mb100 {margin-bottom: 100px;}
.m .s-mb160 {margin-bottom: 160px;}

.s .s-mb5  {margin-bottom: 5px;}
.s .s-mb10 {margin-bottom: 10px;}
.s .s-mb15 {margin-bottom: 15px;}
.s .s-mb20 {margin-bottom: 20px;}
.s .s-mb25 {margin-bottom: 25px;}
.s .s-mb30 {margin-bottom: 30px;}
.s .s-mb35 {margin-bottom: 35px;}
.s .s-mb40 {margin-bottom: 40px;}
.s .s-mb45 {margin-bottom: 45px;}
.s .s-mb50 {margin-bottom: 50px;}
.s .s-mb55 {margin-bottom: 55px;}
.s .s-mb60 {margin-bottom: 60px;}
.s .s-mb65 {margin-bottom: 65px;}
.s .s-mb70 {margin-bottom: 70px;}
.s .s-mb75 {margin-bottom: 75px;}
.s .s-mb80 {margin-bottom: 80px;}
.s .s-mb85 {margin-bottom: 85px;}
.s .s-mb90 {margin-bottom: 90px;}
.s .s-mb95 {margin-bottom: 95px;}
.s .s-mb100 {margin-bottom: 100px;}
.s .s-mb160 {margin-bottom: 160px;}

.mr5  {margin-right: 5px;}
.mr10 {margin-right: 10px;}
.mr15 {margin-right: 15px;}
.mr20 {margin-right: 20px;}

.pa5  {padding: 5px;}
.pa10 {padding: 10px;}
.pa15 {padding: 15px;}
.pa20 {padding: 20px;}

.pt5  {padding-top: 5px;}
.pt10 {padding-top: 10px;}
.pt15 {padding-top: 15px;}
.pt20 {padding-top: 20px;}
.pt25 {padding-top: 25px;}

.pl5  {padding-left: 5px;}
.pl10 {padding-left: 10px;}
.pl15 {padding-left: 15px;}
.pl20 {padding-left: 20px;}

.pb5  {padding-bottom: 5px;}
.pb10 {padding-bottom: 10px;}
.pb15 {padding-bottom: 15px;}
.pb20 {padding-bottom: 20px;}

.pr5  {padding-right: 5px;}
.pr10 {padding-right: 10px;}
.pr15 {padding-right: 15px;}
.pr20 {padding-right: 20px;}

.ac {text-align: center;}

.w1200 {
  width: 1200px;
  margin: 0 auto;
}
.wrap {
  width: 1366px;
  margin: 0 auto;
}
/*.m .wrap {
  width: 100%;
  margin: 0 auto;
}
*/
.m .wrap ,
.s .wrap {
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.m .header_bgPlayer .wrap ,
.s .header_bgPlayer .wrap {
  width: 100%;
  margin: 0 auto;
  padding:0;
}




.fs12 {font-size: 12px;font-size: 1.2rem;}
.fs14 {font-size: 14px;font-size: 1.4rem;}
.fs16 {font-size: 16px;font-size: 1.6rem;}
.fs18 {font-size: 18px;font-size: 1.8rem;}
.fs20 {font-size: 20px;font-size: 2.0rem;}
.fs24 {font-size: 24px;font-size: 2.4rem;}
.fs32 {font-size: 32px;font-size: 3.2rem;}
.fs40 {font-size: 40px;font-size: 4.0rem;}

.fs_sup{vertical-align:super;font-size: smaller;}

.txtRed {color: #ff0000;}

.indent-h {text-indent: -1em; padding-left: 1em;}

/*color*/
.white{
  color:#fff;
}



.pc { display: block!important; }
.l .pc { display: none!important; }
.m .pc { display: none!important; }
.s .pc { display: none!important; }

.tablet { display: none!important; }
.l .tablet { display: block!important; }
.m .tablet { display: none!important; }
.s .tablet { display: none!important; }

.sp { display: none!important; }
.l .sp { display: none!important; }
.m .sp { display: block!important; }
.s .sp { display: block!important; }

.tablet.pc { display: block!important; }
.l .tablet.pc { display: block!important; }
.m .tablet.pc { display: none!important; }
.s .tablet.pc { display: none!important; }

.tablet.sp { display: none!important; }
.l .sp.tablet { display: block!important; }
.m .sp.tablet { display: block!important; }
.s .sp.tablet { display: block!important; }



br.pc { display: inline!important; }
.l br.pc { display: none!important; }
.m br.pc { display: none!important; }
.s br.pc { display: none!important; }

br.tablet { display: none!important; }
.l br.tablet { display: inline!important; }
.m br.tablet { display: none!important; }
.s br.tablet { display: none!important; }

br.sp { display: none!important; }
.l br.sp { display: none!important; }
.m br.sp { display: inline!important; }
.s br.sp { display: inline!important; }

br.pc.tablet { display: inline!important; }
.l br.pc.tablet { display: inline!important; }
.m br.pc.tablet { display: inline!important; }
.s br.pc.tablet { display: inline!important; }

br.tablet.sp { display: none!important; }
.l br.tablet.sp { display: inline!important; }
.m br.tablet.sp { display: inline!important; }
.s br.tablet.sp { display: inline!important; }




/* wrapper
-----------------------------*/
.wrapper {
  display: none;
  width: 100%;
  line-height: 1.6;
  text-align: left;
  overflow: hidden;
}

/* contents
-----------------------------*/
.contents {
  width: 100%;
}

.contents .toppage {
  width: 100%;
  margin:0 auto;
}





/*================================================
　半汎用
================================================ */

div.toppage {
  position: relative;
}

main {
  width: 100%;
}

footer {
  width: 100%;
  background: white;
  position: relative;
  z-index: 5;
}
footer p {
  font-size: 12px;
  color: #4e5052;
  text-align: center;
  padding: 30px 0;
}


/*================================================
　Fチケアプリ経由で開かれるページ用
================================================ */
.frameForApp {
  width: 100%;
  height: 100vh;
}

._hideForApp {
  display: none !important;
}

.appScroll {
  -ms-overflow-style: none !important;    /* IE, Edge 対応 */
  scrollbar-width: none !important; /* firefox 対応 */
}

.appScroll::-webkit-scrollbar {
  display: none !important;
}
/*================================================
　個別
================================================ */

/* メニュー */

.header-top {
  /* max-width: 1366px;
  width: 1040px;
  height: 100px; */
  /* position: absolute;
  right: 0;
  margin:0 auto;
  z-index: 4;
  padding:30px; */
  width: 1040px;
    height: 100px;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 4;
}
.header-top div {
    float: right;
    margin: 30px;
}

.l .header-top ,
.m .header-top ,
.s .header-top {
  width: 100%;
}

.header-top nav div {
  width: 36px;
  height: 30px;
  margin: 35px 0 0 auto;
}
.s .header-top nav div {
  margin: 46px 28px 0 auto;
}
.header-top nav div span {
  display: block;
  background: #4e5052;
  width: 100%;
  height: 4px;
  margin-bottom: 9px;
}
.header-top nav div span:last-child {
  margin-bottom: 0;
}


/**/

/* header
-----------------------------*/
.header {
  background: #ffffff;
  max-width: 1360px;
  margin:0 auto ;
  padding:30px 100px;
  /* display:block;
  text-align: right; */
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.l .header {
  padding:20px;
}
.m .header {
  padding:20px;
}
.s .header {
  padding:20px;
}
.header-logo {
  margin-left: 10px;
  margin-top: 10px;
}

.header-logo img{
  width: 50px;
  display: inline-block;
  vertical-align: middle;
}
.header-logo p{
  display: inline-block;
  font-size:18px;
  font-weight: bold;
  vertical-align: middle;
  padding-left:10px;
}
.header-nav {

}
.header-spNav {
  display: none;
}

.header-nav ul{
  margin-top: 22px;
  margin-right: 10px;
}
.header-nav ul li{
  display: inline-block;
  margin-left: 29px;
}
.spNav {
  display: none;
}
.s .header {
width: 100%;
}
.s .header-logo {
  width: 300px;
  margin: 10px auto;
}
.s .header-logo img{
  width: 30px;
}
.s .header-logo p{
  font-size:14px;
  margin-right:20px;

}
.s .header-nav{
  display: none;
}
.s .spNav {
  display: block;
}
.s .spNav ul {
  padding: 15px 0 ;
  display: flex;
  justify-content: space-around;
  border-top: solid 1px #c8e7f7;
}
.s .spNav ul li {
  width: 33%;
}
.m .header ,
.s .header {
  width: 100%;
}
.m .header-logo {
  width: auto;
}
.m .header-logo img{
  width: 50px;
  display: inline-block;
}
.m .header-logo p{
  display: inline-block;
  font-size:14px;
}
.m .header-nav{
  display: none;
}
.m .spNav {
  display: block;
}
.m .spNav ul {
  padding: 15px 0 ;
  display: flex;
  justify-content: space-around;
  border-top: solid 1px #c8e7f7;
}
.m .spNav ul li {
  width: 33%;
}
.l .header {
width: 100%;
}
.l .header-logo {
  margin-left: 10px;
  margin-top: 10px;
}
.l .header-logo img{
  width: 50px;
}
/*
.l .header nav ul{
  margin-top: 22px;
  margin-right: 10px;
}
*/
/*
.l .header nav ul li{
  display: inline-block;
  margin-left: 29px;
}
*/




/* ハンバーガーメニュー
-----------------------------*/
.menu-overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity .5s;
}
.menu-overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
  z-index:3;
}
.menu-trigger {
  width: 40px;
  height: 40px;
  display: inline-block;
  background: url(../images/ico_open.png) center center no-repeat;
  background-size: 36px 28px;
  cursor: pointer;
  z-index: 99;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.blog-menu-toggle {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 35px;
  right: 35px;
  background: url(../images/ico_close.png) center center no-repeat;
  background-size: 30px 29px;
  overflow: hidden;
  text-indent: 60px;
  white-space: nowrap;
}
.m .blog-menu-toggle {
  top: 20px;
  right: 15px;
  background-size: 24px 23px;
}
.s .blog-menu-toggle {
  top: 20px;
  right: 15px;
  background-size: 24px 23px;
}
nav.menu-list {
  width: 360px;
  height: 100%;
  padding-top: 115px;
  background-color: #fff;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  transform: translate(360px);
  transition: all .4s;
  z-index: 100;
}
.m nav.menu-list {
  padding-top: 100px;
  width: 300px;
  transform: translate(300px);
}
.s nav.menu-list {
  padding-top: 100px;
  width: 280px;
  transform: translate(280px);
}
nav.menu-list.open {
  transform: translateZ(0);
}
.l nav.menu-list ul ,
.m nav.menu-list ul ,
.s nav.menu-list ul {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
nav.menu-list li {
  color: #000000;
  text-align: left;
  font-size:1.8rem;
  border-top:2px solid #d3d8e0;
}
.m nav.menu-list li {
  font-size:1.6rem;
}
.s nav.menu-list li {
  font-size:1.6rem;
}
nav.menu-list li:last-child {
  border-top:2px solid #d3d8e0;
  border-bottom:2px solid #d3d8e0;
}
nav.menu-list li a{
  padding: 20px 30px;
  display:block;
}
.m nav.menu-list li a{
  padding: 15px 20px;
}
.s nav.menu-list li a{
  padding: 15px 20px;
}
nav.menu-list li a:hover{
  background-color: #dcedf6;
}
nav.menu-list li .external{
  background: #fff url(../images/ico_external.png) 85% 50% no-repeat
}
.m nav.menu-list li .external{
  background: #fff url(../images/ico_external.png) 88% 50% no-repeat
}
.s nav.menu-list li .external{
  background: #fff url(../images/ico_external.png) 88% 50% no-repeat
}
nav.menu-list li .external:hover{
  background-color: #dcedf6;
}




















/* ===== toppage-background ===== */

div.toppage-background {
  background: no-repeat url("../images/mv_bg_pc.jpg");
  background-size: contain;
  background-position: top center;
  width: 100%;
  min-width: 1366px;
  padding: 100px 0 250px;
  position: absolute;
  padding-bottom: 100%;
  z-index: -5;
}
.l div.toppage-background {
  background-size: cover;
}
.m div.toppage-background ,
.s div.toppage-background {
  background: no-repeat url("../images/mv_bg_sp.jpg");
  background-size: cover;
  min-width: 0;
  z-index: -5;
  height: 100vh;
}

/* ===== MV ===== */

div.toppage main div.mv {
  width: 100%;
  padding: 100px 0 250px;
  position: relative;
  z-index: 2;
}
.l div.toppage main div.mv {
  width: 100%;
  padding: 100px 0 250px;
  position: relative;
  z-index: 2;
}
.m div.toppage main div.mv ,
.s div.toppage main div.mv {
  min-width: 0;
  padding: 35px 20px 250px;
  z-index: 1;
}

div.toppage main div.mv__inner {
  width: 1040px;
  margin: auto;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  position: relative;
}
.l div.toppage main div.mv__inner {
  width: 100%;
  padding-right: 10%;
  padding-left: 10%;
}
.m div.toppage main div.mv__inner ,
.s div.toppage main div.mv__inner {
  width: 100%;
  margin: 0;
    display:block;
}



div.toppage main div.mv__left {
  width: 55%;
}
.m div.toppage main div.mv__left ,
.s div.toppage main div.mv__left {
  width: 100%;
  position: relative;
  z-index: 1;
}



div.toppage main div.mv__left div.mv__icon {
  width: 64px;
}
.m div.toppage main div.mv__left div.mv__icon ,
.s div.toppage main div.mv__left div.mv__icon {
  width: 52px;
}



.l div.toppage main div.mv__ttl {
  margin-bottom: 10%;
}
.m div.toppage main div.mv__ttl ,
.s div.toppage main div.mv__ttl {
  width: 100%;
}



div.toppage main div.mv__left div.mv__btn {
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  position: relative;
}
div.toppage main div.mv__left div.mv__btn span:nth-child(1) ,
div.toppage main div.mv__left div.mv__btn span:nth-child(2) { width: 40%; }
div.toppage main div.mv__left div.mv__btn span:nth-child(3) { width: 20%; }
div.toppage main div.mv__left div.mv__btn span img { padding-right: 20px; }
div.toppage main div.mv__left div.mv__btn span:last-child img { padding-right: 0; }
.m div.toppage main div.mv__left div.mv__btn span:nth-child(1) ,
.s div.toppage main div.mv__left div.mv__btn span:nth-child(1) { width: 50%; padding-right: 5px;}
.m div.toppage main div.mv__left div.mv__btn span:nth-child(2) ,
.s div.toppage main div.mv__left div.mv__btn span:nth-child(2) { width: 50%; padding-left: 5px; }
.m div.toppage main div.mv__left div.mv__btn span img ,
.s div.toppage main div.mv__left div.mv__btn span img { padding-right: 0; }

div.toppage main div.mv__left div.mv__btn span p {
  font-size: 12px;
  color: #4e5052;
}



div.toppage main div.mv__right {
  width: 45%;
}
.m div.toppage main div.mv__right ,
.s div.toppage main div.mv__right {
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  z-index: 0;
}
div.toppage main div.mv__right img {
  width: 100%;
  padding: 0 100px;
}
.l div.toppage main div.mv__right img {
  padding-right: 0;
  padding-left: 29%;
}
.s div.toppage main div.mv__right img ,
.m div.toppage main div.mv__right img {
  padding: 0;
}



div.toppage main img.mv__arrow {
  width: 89px;
  position: absolute;
  bottom: -75px;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
}
.l div.toppage main img.mv__arrow {
  width: 89px;
  position: absolute;
  bottom: -7vw;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
}


div.toppage main div.mv__block {
  margin-bottom: 20px;
  padding: 10px;
  background-color: #fff;
  border: 1px solid #ccc;
  font-size: 14px;
}
div.toppage main div.mv__block h4 {
  font-size: 16px;
  font-weight: 900;
  display: block;
}
div.toppage main div.mv__block ul {
  font-size: 12px;
}
div.toppage main div.mv__block a {
  color: #006598;
}






/* ===== セクション1 ===== */

div.toppage main div.sec1 {
  background: no-repeat url("../images/sec1_bg_pc.png");
  background-size: cover;
  background-position: top center;
  width: 100%;
  margin-top: -400px;
  padding: 200px 0 120px;
  z-index: 1;
  position: relative;
}
.l div.toppage main div.sec1 {
  background: no-repeat url("../images/sec1_bg_pc.png");
  background-size: cover;
  background-position: top center;
  width: 100%;
  margin-top: -400px;
  padding: 20% 0 10%;
  z-index: 1;
  position: relative;
}
.m div.toppage main div.sec1 ,
.s div.toppage main div.sec1 {
  background: no-repeat url("../images/sec1_bg_sp.png");
  background-size: cover;
  min-width: 0px;
  margin-top: -250px;
  padding: 0px 0 50px;
}



div.toppage main div.sec1__inner {
  width: 1220px;
  margin: auto;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  margin-top: 240px;
}
.l div.toppage main div.sec1__inner {
  width: 100%;
  margin-top: 180px;
}
.s div.toppage main div.sec1__inner ,
.m div.toppage main div.sec1__inner {
  display: block;
  width: 100%;
  margin-top: 0px;
  padding-top: 110px;
  z-index: 1;
}



div.toppage main div.sec1__left {
  width: 700px;
  height: auto;
  z-index: 3;
  padding-bottom: 80px;
}
.l div.toppage main div.sec1__left {
  width: 60%;
}
.m div.toppage main div.sec1__left {
  width: 100%;
  padding: 0 40px;
}
.s div.toppage main div.sec1__left {
  width: 100%;
  padding: 0 30px;
}



div.toppage main img.sec1__title {
  display: block;
  width: 520px;
  height: auto;
  margin: auto;
}
.l div.toppage main img.sec1__title {
  width: 80%;
}
.m div.toppage main img.sec1__title {
  display: block;
  width: 50%;
  height: auto;
  margin: 0 auto 65px 0;
}
.s div.toppage main img.sec1__title {
  display: block;
  width: 50%;
  height: auto;
  margin: 0 auto 30px 0;
}



div.toppage main ul.sec1__character {
  width: 100%;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
}
.m div.toppage main ul.sec1__character ,
.s div.toppage main ul.sec1__character {
  display: block;
}



div.toppage main ul.sec1__character li {
  width: 33.3333%;
  padding: 25px;
  margin-bottom: 35px;
}
.l div.toppage main ul.sec1__character li {
  padding: 25px 4%;
}
.m div.toppage main ul.sec1__character li ,
.s div.toppage main ul.sec1__character li {
  width: 100%;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
}


div.toppage main ul.sec1__character li img {
  display: block;
  margin-bottom: 20px;
}
.m div.toppage main ul.sec1__character li img ,
.s div.toppage main ul.sec1__character li img {
  width: 125px;
}

div.toppage main ul.sec1__character li p {
  font-size: 14px;
  color: white;
  text-align: center;
}
.l div.toppage main ul.sec1__character li p {
  font-size: 12px;
  text-align: left;
}
.m div.toppage main ul.sec1__character li p {
  font-size: 14px;
  text-align: left;
  margin-left: 15px;
}
.s div.toppage main ul.sec1__character li p {
  font-size: 13px;
  text-align: left;
  margin-left: 15px;
}



div.toppage main div.sec1__right {
  position: absolute;
  top: 52%;
  right: -200px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  margin: auto;
  z-index: 2;
  max-width: 828px;
  width: 60%;
}
.l div.toppage main div.sec1__right {
  top: 53%;
  width: 60%;
  right: -15%;
}
.s div.toppage main div.sec1__right ,
.m div.toppage main div.sec1__right {
  position: absolute;
  top: 9%;
  right: -22%;
  transform: translateY(-5%);
  -webkit- transform: translateY(-5%);
  margin: auto;
  z-index: 2;
  width: 85%;
}





/* ===== セクション2 ===== */

div.toppage main div.sec2 {
  background: no-repeat url("../images/sec2_bg.png");
  background-size: cover;
  background-position: top center;
  width: 100%;
  margin-top: -310px;
  padding: 260px 0 220px;
  z-index: 0;
  position: relative;
}
.l div.toppage main div.sec2 {
  background: no-repeat url("../images/sec2_bg.png");
  background-size: cover;
  background-position: top center;
  width: 100%;
  margin-top: -310px;
  padding: 260px 0 160px;
  z-index: 0;
  position: relative;
}
.m div.toppage main div.sec2 ,
.s div.toppage main div.sec2 {
  background: no-repeat url("../images/sec2_bg.png");
  background-size: cover;
  background-position: top 0px left -100px;
  min-width: 0px;
  margin-top: -140px;
  padding: 0px 0 60px;
}



div.toppage main div.sec2__inner {
  width: 1040px;
  margin: auto;
    display:block;
}
.l div.toppage main div.sec2__inner {
  width: 100%;
}
.m div.toppage main div.sec2__inner ,
.s div.toppage main div.sec2__inner {
  display: block;
  width: 100%;
  margin-top: 0px;
  padding: 180px 20px 0;
}



div.toppage main div.sec2 img.sec2__title {
  width: 530px;
  margin: auto auto 40px;
  display: block;
}
.l div.toppage main div.sec2 img.sec2__title {
  width: 55%;
}
.m div.toppage main div.sec2 img.sec2__title ,
.s div.toppage main div.sec2 img.sec2__title {
  width: 90%;
  margin: auto auto 40px;
  display: block;
}



div.toppage main div.sec2 ul.sec2__function {
  margin: auto;
  display: block;
}



div.toppage main div.sec2 ul.sec2__function li { position: relative; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(1) { right: 90px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(2) { left: 170px; margin-top: -110px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(3) { right: 130px; margin-top: -150px; }

.m div.toppage main div.sec2 ul.sec2__function li {
  height: 200px;
}
.s div.toppage main div.sec2 ul.sec2__function li {
  height: 160px;
}

.l div.toppage main div.sec2 ul.sec2__function li:nth-child(1) { right: 8%; margin-top: 0; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(2) { left: 8%; margin-top: -4%; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(3) { right: 3%; margin-top: -4%; }
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(1) ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(1) { right: 0; }
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(2) ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(2) { left: 0; margin-top: 0; }
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(3) ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(3) { right: 0; margin-top: 0; }



div.toppage main div.sec2 ul.sec2__function li div {
  width: 325px;
  margin: auto;
  z-index: 2;
  position: relative;
}
.l div.toppage main div.sec2 ul.sec2__function li div {
  width: 30vw;
}
.m div.toppage main div.sec2 ul.sec2__function li div {
  width: 60%;
  position: absolute;
}
.s div.toppage main div.sec2 ul.sec2__function li div {
  width: 65%;
  position: absolute;
}
div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div {
  right: 270px;
}
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div {right: 23%;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div {
  right: auto;
  left: 0;
}
div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div {
  left: 200px;
}
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div {left: 23%;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div {
  right: -20px;
  left: auto;
}
div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div {
  right: 200px;
}
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div {right: 23%;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div {
  right: auto;
  left: 0;
}



div.toppage main div.sec2 ul.sec2__function li div img {
  width: 310px;
  margin: 0 auto 10px 0;
  display: block;
  z-index: 2;
}
.m div.toppage main div.sec2 ul.sec2__function li div img ,
.s div.toppage main div.sec2 ul.sec2__function li div img {
  margin: 0 auto 5px 0;
}
div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div img { width: 325px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div img { width: 310px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div img { width: 320px; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div img { width: 100%;}
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div img { width: 100%;}
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div img { width: 100%;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div img ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div img { width: 100%;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div img ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div img { width: 100%; margin-left: -20px;}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div img ,
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div img { width: 100%; }



div.toppage main div.sec2 ul.sec2__function li div p {
  font-size: 14px;
}
.s div.toppage main div.sec2 ul.sec2__function li div p ,
.m div.toppage main div.sec2 ul.sec2__function li div p {
  font-size: 11px;
}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div p {
  padding-right: 45px;
}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div p {
  margin-left: 28px;
  padding-right: 20px;
}
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div p {
  padding-right: 35px;
}
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(1) div p {
  letter-spacing: -0.5px;
  padding-right: 30px;
}
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(2) div p {
  margin-left: 28px;
  padding-right: 0px;
}
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(3) div p {
  padding-right: 30px;
}



div.toppage main div.sec2 ul.sec2__function li img.sec2__img {
  width: 310px;
  margin: auto;
  display: block;
  z-index: 1;
}
.l div.toppage main div.sec2 ul.sec2__function li img.sec2__img {
  width: 22%;
}
.s div.toppage main div.sec2 ul.sec2__function li img.sec2__img ,
.m div.toppage main div.sec2 ul.sec2__function li img.sec2__img {
  width: 49%;
  position:absolute ;
}
div.toppage main div.sec2 ul.sec2__function li:nth-child(1) img.sec2__img { margin-top: -170px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(2) img.sec2__img { margin-top: -110px; }
div.toppage main div.sec2 ul.sec2__function li:nth-child(3) img.sec2__img { margin-top: -170px; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(1) img.sec2__img { margin-top: -16%; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(2) img.sec2__img { margin-top: -16%; }
.l div.toppage main div.sec2 ul.sec2__function li:nth-child(3) img.sec2__img { margin-top: -16%; }
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(1) img.sec2__img ,
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(1) img.sec2__img { margin-top: 0; right: 0; }
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(2) img.sec2__img ,
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(2) img.sec2__img { margin-top: 0; left: 0; }
.s div.toppage main div.sec2 ul.sec2__function li:nth-child(3) img.sec2__img ,
.m div.toppage main div.sec2 ul.sec2__function li:nth-child(3) img.sec2__img { margin-top: 0; right: 0; }





/* ===== セクション3 ===== */

div.toppage main div.sec3 {
  background: no-repeat url("../images/sec3_bg_pc.png");
  background-size: cover;
  background-position: center;
  width: 100%;
  margin-top: -270px;
  padding: 200px 0 250px;
  z-index: 2;
  position: relative;
}
.l div.toppage main div.sec3 {
  padding: 28% 0 30vw;
  background-size: auto 70vw ;
}
.s div.toppage main div.sec3 ,
.m div.toppage main div.sec3 {
  background: no-repeat url("../images/sec3_bg_sp.png");
  background-size: 100% auto;
  min-width: 0px;
  margin-top: -50px;
  padding: 60px 0 100px;
}

div.toppage main div.sec3__inner {
  width: 1040px;
  margin: auto;
    display:block;
}
.l div.toppage main div.sec3__inner {
  width: 70%;
}
.s div.toppage main div.sec3__inner ,
.m div.toppage main div.sec3__inner {
  width: 100%;
  margin: auto;
    padding: 0 40px;
}



div.toppage main div.sec3 img.sec3__title {
  width: 585px;
  margin: auto auto 20px;
  display: block;
}
.l div.toppage main div.sec3 img.sec3__title {
  width: 90%;
}
.s div.toppage main div.sec3 img.sec3__title ,
.m div.toppage main div.sec3 img.sec3__title {
  width: 100%;
}



div.toppage main div.sec3 div.sec3__content {
  width: 720px;
  margin: auto;
}
.l div.toppage main div.sec3 div.sec3__content {
  width: 100%;
}
.s div.toppage main div.sec3 div.sec3__content ,
.m div.toppage main div.sec3 div.sec3__content {
  width: 100%;
}



div.toppage main div.sec3 ul.sec3__function {
  margin: auto;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  position: relative;
}
.s div.toppage main div.sec3 ul.sec3__function ,
.m div.toppage main div.sec3 ul.sec3__function {
  margin: auto;
    display: block;
}

div.toppage main div.sec3 ul.sec3__function li {
  width: 236px;
  background: #f1f7fa;
  border-radius: 10px;
  margin-right: 6px;
  padding: 20px;
  box-shadow: 0 4px 5px rgba(0,0,0,0.2);
}
.l div.toppage main div.sec3 ul.sec3__function li {
  padding: 10px;
}
.m div.toppage main div.sec3 ul.sec3__function li {
  background: rgba(255,255,255,0.95);
  width: 65%;
  border-radius: 5px;
  margin: 0 auto 5px;
  padding: 10px;
}
.s div.toppage main div.sec3 ul.sec3__function li {
  background: rgba(255,255,255,0.95);
  width: 65%;
  border-radius: 5px;
  margin: 0 auto 5px;
  padding: 5px 5px;
}

div.toppage main div.sec3 ul.sec3__function li:last-child { margin-right: 0; }
.s div.toppage main div.sec3 ul.sec3__function li:last-child ,
.m div.toppage main div.sec3 ul.sec3__function li:last-child { margin-right: auto; }

div.toppage main div.sec3 ul.sec3__function li img {
  width: auto;
  height: 108px;
  display: block;
  margin: auto;
}
.l div.toppage main div.sec3 ul.sec3__function li img {
  height: 10vw;
}
.s div.toppage main div.sec3 ul.sec3__function li img ,
.m div.toppage main div.sec3 ul.sec3__function li img {
  height: 70px;
}

div.toppage main div.sec3 ul.sec3__function li p {
  font-size: 14px;
  line-height: 1.2em;
}
.l div.toppage main div.sec3 ul.sec3__function li p ,
.m div.toppage main div.sec3 ul.sec3__function li p {
  font-size: 12px;
}
.l div.toppage main div.sec3 ul.sec3__function li p {
  margin-top: 1vw;
}
.l div.toppage main div.sec3 ul.sec3__function li:first-child p {
  margin-top: 2vw;
}
.s div.toppage main div.sec3 ul.sec3__function li p {
  font-size: 10px;
}



div.toppage main div.sec3:after {
  content: "";
  background: no-repeat url("../images/sec4_bg.png");
  width: 100%;
  height: 100%;
  background-size: 100% 50%;
  background-position: bottom center;
  z-index: 1;
  display: block;
}






/* ===== セクション4 ===== */

div.toppage div.sec4__bordertop {
  display: none;
}
.s div.toppage div.sec4__bordertop ,
.m div.toppage div.sec4__bordertop {
  background: no-repeat url("../images/sec4_border.png");
  background-color: transparent;
  background-size: 100%;
  display: block;
  width: 100%;
    position: relative;
  z-index: 3;
  margin-top: -80px;
  }
.s div.toppage div.sec4__bordertop:before ,
.m div.toppage div.sec4__bordertop:before {
    content:"";
    display: block;
    padding-top: 6%;
}



div.toppage main div.sec4 {
  background-color: #eaeaea;
  width: 100%;
  z-index: 1;
  position: relative;
  display: block;
  margin-top: -300px;
  padding: 300px 0 65px;
}
.l div.toppage main div.sec4 {
  z-index: 1;
  min-width: 0;
  margin-top: -400px;
  padding: 300px 20px 30px;
}
.s div.toppage main div.sec4 ,
.m div.toppage main div.sec4 {
  z-index: 3;
  min-width: 0;
  margin-top: 0px;
  padding: 30px 20px 30px;
}

div.toppage main div.sec4__inner {
  width: 1200px;
  margin: auto;
  padding: 55px 50px 30px;
    display:block;
  background: white;
  position: relative;
}
.l div.toppage main div.sec4__inner {
  padding: 20px 20px;
  width: 100%;
}
.s div.toppage main div.sec4__inner ,
.m div.toppage main div.sec4__inner {
  width: 100%;
  margin: auto;
  padding: 15px 5px;
    display:block;
  background: white;
  position: relative;
}



div.toppage main div.sec4 img.sec4__title {
  width: 664px;
  display: block;
}
.l div.toppage main div.sec4 img.sec4__title {
  width: 75%;
}
.s div.toppage main div.sec4 img.sec4__title ,
.m div.toppage main div.sec4 img.sec4__title {
  width: 100%;
  padding: 0 15px;
  display: block;
}



div.toppage main div.sec4 div.sec4__column {
  width: 664px;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  margin: 45px 0 0 20px;
  position: relative;
}
.l div.toppage main div.sec4 div.sec4__column {
  margin: 30px 0 0 0;
  width: 70%;
}
.m div.toppage main div.sec4 div.sec4__column {
  width: 60%;
  margin: 25px 0 0 auto;
  position: relative;
}
.s div.toppage main div.sec4 div.sec4__column {
  width: 50%;
  margin: 25px 15px 0 auto;
  position: relative;
}

div.toppage main div.sec4 div.sec4__column ul {
  width: 425px;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.m div.toppage main div.sec4 div.sec4__column ul {
  width: 100%;
  display: block;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 4;
}
.s div.toppage main div.sec4 div.sec4__column ul {
  width: 100%;
  display: block;
  margin: 0 0 0 auto;
  padding-bottom: 2em;
  position: relative;
  z-index: 4;
}
div.toppage main div.sec4 div.sec4__column ul li {
  width: 50%;
  padding-right: 5px
}
.m div.toppage main div.sec4 div.sec4__column ul li {
  width: 100%;
  display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  padding: 0;
}
.s div.toppage main div.sec4 div.sec4__column ul li {
  width: 100%;
  display: block;
  padding: 0;
}
div.toppage main div.sec4 div.sec4__column ul li:nth-child(2) { padding-right: 0 }
div.toppage main div.sec4 div.sec4__column ul li:nth-child(3) { width: 100%; }

div.toppage main div.sec4 div.sec4__column ul li img {
  width: 100%;
  height: auto;
  margin-left: 0;
}
.m div.toppage main div.sec4 div.sec4__column ul li img {
  width: 110px;
  margin-left: 0;
}
.s div.toppage main div.sec4 div.sec4__column ul li img {
  width: 100%;
  margin-left: 0;
}

.s div.toppage main div.sec4 div.sec4__column ul li img ,
.m div.toppage main div.sec4 div.sec4__column ul li img {
  margin-bottom: 5px;
}

div.toppage main div.sec4 div.sec4__column ul li p {
  margin-top: 5px;
  position: relative;
}
.m div.toppage main div.sec4 div.sec4__column ul li p {
  margin: 20px 0 0 5px;
  font-size: 10px;
  line-height: 1em;
}
.s div.toppage main div.sec4 div.sec4__column ul li p {
  margin: 0 0 10px 5px;
  font-size: 10px;
  line-height: 1em;
}

div.toppage main div.sec4 div.sec4__column img {
  width: 110px;
  height: 110px;
  margin-left: 20px;
}

.s div.toppage main div.sec4 div.sec4__column ul li:last-child p {
  margin: 0 0 0 5px;
  font-size: 10px;
}



div.toppage main div.sec4 img.sec4__hand {
  width: 452px;
  position: absolute;
  padding-top: 100px;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}
.l div.toppage main div.sec4 img.sec4__hand {
  width: 40%;
  position: absolute;
  padding-top: 100px;
  top: 50%;
  right: -15%;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}
.m div.toppage main div.sec4 img.sec4__hand {
  width: 70%;
  padding: 0;
  top: auto;
  bottom: -21vw;
  right: auto;
  left: -10px;
  transform: none;
  -webkit- transform: none;
}
.s div.toppage main div.sec4 img.sec4__hand {
  width: 200px;
  padding: 0;
  top: auto;
  bottom: -14vw;
  right: auto;
  left: -10px;
  transform: none;
  -webkit- transform: none;
}




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　下層ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* 利用規約
------------------------------ */
.termsofuse {
  background-color:#eaeaea;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 60px;
}
.l .termsofuse {
  padding: 30px 10px 30px;
}
.m .termsofuse {
  padding: 30px 10px 30px;
}
.s .termsofuse {
  padding: 30px 10px 30px;
}
.termsofuse-wrap {
  width: 942px;
  margin: 0 auto;
}
.l .termsofuse-wrap {
  width: 100%;
  margin: 0 auto;
}
.m .termsofuse-wrap {
  width: 100%;
  margin: 0 auto;
}
.s .termsofuse-wrap {
  width: 100%;
  margin: 0 auto;
}
.termsofuse-wrap-title {
  font-size: 3.6rem;
  font-weight: bold;
  color: #0074af;
  padding-bottom:50px;
  text-align:center;
}
.m .termsofuse-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}
.s .termsofuse-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}
.termsofuse-wrap-content {
  width: 940px;
  margin:0 auto;
  padding: 45px 67px;
  position: relative;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  text-align:left;
}
.l .termsofuse-wrap-content {
  width: 100%;
  padding: 20px;
}
.m .termsofuse-wrap-content {
  width: 100%;
  padding: 20px;
}
.s .termsofuse-wrap-content {
  width: 100%;
  padding: 20px;
}
.termsofuse-wrap-content-title {
  font-size: 2.4rem;
  font-weight: bold;
  color: #4e5052;
  padding-bottom:40px;
}
.m .termsofuse-wrap-content-title {
  font-size: 2.0rem;
  padding-bottom:20px;
}
.s .termsofuse-wrap-content-title {
  font-size: 2.0rem;
  padding-bottom:20px;
}
.termsofuse-wrap-list-title {
  font-size: 2.0rem;
  color: #4e5052;
  border-bottom:2px solid #babec2;
  padding-bottom:7px;
  margin-bottom:17px;
}
.m .termsofuse-wrap-list-title {
  font-size: 1.4rem;
  padding-bottom:5px;
  margin-bottom:12px;
}
.s .termsofuse-wrap-list-title {
  font-size: 1.4rem;
  padding-bottom:5px;
  margin-bottom:12px;
}
.termsofuse-wrap-content p{
    font-size: 1.4rem;
  padding-bottom:15px;
  line-height:1.4;
}
.m .termsofuse-wrap-content p{
  font-size: 1.2rem;
    line-height:1.8;
}
.s .termsofuse-wrap-content p{
  font-size: 1.2rem;
}
.termsofuse-wrap-list li{
  padding-bottom:15px;
  padding-left: 1em;
  text-indent: -1em;
  line-height:1.6;
    font-size: 1.4rem;
}
.termsofuse-wrap-list li:last-child{
  padding-bottom:0;
}
.m .termsofuse-wrap-list li{
  font-size: 1.2rem;
  padding-bottom:10px;
}
.s .termsofuse-wrap-list li{
  font-size: 1.2rem;
  padding-bottom:10px;
}
.termsofuse-wrap-list-sub{
  padding-bottom:15px;
}
.m .termsofuse-wrap-list-sub{
  font-size: 1.2rem;
  padding-bottom:10px;
}
.s .termsofuse-wrap-list-sub{
  font-size: 1.2rem;
  padding-bottom:10px;
}

/* 特定商取引法に基づく表記
------------------------------ */
.law {
  background-color:#eaeaea;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 60px;
}
.l .law {
  padding: 30px 10px 30px;
}
.m .law {
  padding: 30px 10px 30px;
}
.s .law {
  padding: 30px 10px 30px;
}
.law-wrap {
  width: 940px;
  margin: 0 auto;
}
.l .law-wrap {
  width: 100%;
  margin: 0 auto;
}
.m .law-wrap {
  width: 100%;
  margin: 0 auto;
}
.s .law-wrap {
  width: 100%;
  margin: 0 auto;
}
.law-wrap-title {
  font-size: 3.6rem;
  font-weight: bold;
  color: #0074af;
  padding-bottom:50px;
  text-align: center;
}
.m .law-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}
.s .law-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}
.law-wrap-content {
  width: 942px;
  margin:0 auto;
  padding: 45px 67px;
  position: relative;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  text-align:left;
}
.l .law-wrap-content {
  width: 100%;
  padding: 20px;
}
.m .law-wrap-content {
  width: 100%;
  padding: 20px;
}
.s .law-wrap-content {
  width: 100%;
  padding: 20px;
}
.law-wrap-content-title {
  font-size: 2.4rem;
  font-weight: bold;
  color: #4e5052;
  padding-bottom:40px;
}
.m .law-wrap-content-title {
  font-size: 2.0rem;
  padding-bottom:20px;
}
.s .law-wrap-content-title {
  font-size: 2.0rem;
  padding-bottom:20px;
}
.law-wrap-list-title {
    font-size: 2.0rem;
    color: #4e5052;
    padding-bottom: 30px;
}
.m .law-wrap-list-title {
  font-size: 1.7rem;
  padding-bottom:20px;
}
.s .law-wrap-list-title {
  font-size: 1.7rem;
  padding-bottom:20px;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.law-wrap-content-table {
  width: 100%;
  margin-left:auto;
  margin-right:auto;
  background: #fff;
  border-top: 1px solid #babec2;
  line-height: 1.3;
}
.law-wrap-content-table a {
  color:#2f85b8;
}
.law-wrap-content-table a:hover {
  text-decoration:underline;
}
.law-wrap-content-table .-note {
  font-size:1.4rem;
  padding-top:10px;
  padding-left: 1em;
  text-indent: -1em;
}
.m .law-wrap-content-table .-note {
  font-size:1.2rem;
  padding-top:5px;
}
.s .law-wrap-content-table .-note {
  font-size:1.2rem;
  padding-top:5px;
}
.law-wrap-content-table tr>* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 17px 0;
  vertical-align: top;
  border-bottom: 1px solid #babec2;
  font-size:1.7rem;
  font-weight: normal;
}
.m .law-wrap-content-table tr>* {
  font-size:1.4rem;
  padding: 10px 0;

}
.s .law-wrap-content-table tr>* {
  font-size:1.4rem;
}

.law-wrap-content-table th {
  width: 30%;
  text-align: left;
}
.m .law-wrap-content-table th {
  width: 100%;
  display: block;
  text-align: left;
  border-bottom: none;
}
.s .law-wrap-content-table th {
  width: 100%;
  display: block;
  text-align: left;
  border-bottom: none;
}
.law-wrap-content-table td {
  width: 70%;
  text-align: left;
}
.m .law-wrap-content-table td {
  width: 100%;
  display: block;
  text-align: left;
}
.s .law-wrap-content-table td {
  width: 100%;
  display: block;
  text-align: left;
}

.law-wrap-content-delivery-table {
  width: 100%;
  margin-left:auto;
  margin-right:auto;
  background: #fff;
  line-height: 1.5;
}
.law-wrap-content-delivery-table tr>* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 0 0 0;
  vertical-align: top;
  border:none;
  font-size:1.7rem;
  font-weight: normal;
}
.m .law-wrap-content-delivery-table tr>* {
  padding: 10px 0 0 0;
}
.s .law-wrap-content-delivery-table tr>* {
  padding: 10px 0 0 0;
}
.law-wrap-content-delivery-table th {
  width: 20%;
  text-align: left;
  font-weight:bold;
}
.m .law-wrap-content-delivery-table th {
  width: 100%;
  display: block;
  text-align: left;
}
.s .law-wrap-content-delivery-table th {
  width: 100%;
  display: block;
  text-align: left;
}
.law-wrap-content-delivery-table td {
  width: 80%;
  text-align: left;
}
.m .law-wrap-content-delivery-table td {
  width: 100%;
  display: block;
  text-align: left;
  padding-top:5px;
}
.s .law-wrap-content-delivery-table td {
  width: 100%;
  display: block;
  text-align: left;
  padding-top:5px;
}
/* Q&A
------------------------------ */
.qa {
  background-color:#eaeaea;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 60px;
}
.l .qa{
  padding: 30px 10px 30px;
}
.m .qa {
  padding: 30px 10px 30px;
}
.s .qa {
  padding: 30px 10px 30px;
}
.qa-wrap {
  width: 942px;
  margin: 0 auto;
}
.l .qa-wrap {
  width: 100%;
  margin: 0 auto;
}
.m .qa-wrap {
  width: 100%;
  margin: 0 auto;
}
.s .qa-wrap {
  width: 100%;
  margin: 0 auto;
}
.qa-wrap-title {
  font-size: 3.6rem;
  font-weight: bold;
  color: #0074af;
  padding-bottom:50px;
  text-align: center;
}
.m .qa-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}
.s .qa-wrap-title {
  font-size: 2.4rem;
  padding-bottom:25px;
}








/* faq
------------------------------ */
.faq {
  background: url(../img/bg_b.png);
  background-repeat: repeat;
  background-position: center;
  width: 100%;
  padding-top: 70px;
  padding-bottom: 90px;
}
.m .faq {
  padding: 30px 10px 30px;
}
.s .faq {
  padding: 30px 10px 30px;
}


.faq-wrap {
  max-width: 862px;
  width:100%;
  margin: 0 auto;
}
.m .faq-wrap {
  width: 100%;
  margin: 0 auto;
}
.s .faq-wrap {
  width: 100%;
  margin: 0 auto;
}

.faq-wrap-content-title {
  font-size: 3rem;
  font-weight: bold;
  padding-bottom:40px;
}
.m .faq-wrap-content-title {
  font-size: 2rem;
  padding-bottom:20px;
}
.s .faq-wrap-content-title {
  font-size: 2rem;
  padding-bottom:20px;
}
.faq-wrap-content-info {
  text-align: left;
  width:100%;
}

.faq-wrap-content-info .toggle-group {
  max-width: 850px;
  width:100%;
  margin:0 auto;
}
.faq-wrap-content-info .toggle-arrow {
  background-color:#fff!important;
  border-radius: 8px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.05);
  font-size:2.2rem;
  cursor:pointer;
  padding: 30px 85px;
  background: url(../images/ico_toggle_plus.png) 95% center no-repeat;
  background-size:20px auto;
}
.m .faq-wrap-content-info .toggle-arrow {
  padding: 20px;
  font-size:1.6rem;
  width: 100%;
  background: url(../images/ico_toggle_plus.png) 95% center no-repeat;
  background-size:14px auto;
}
.s .faq-wrap-content-info .toggle-arrow {
  padding: 20px;
  font-size:1.6rem;
  width: 100%;
  background: url(../images/ico_toggle_plus.png) 95% center no-repeat;
  background-size:14px auto;
}
.faq-wrap-content-info .toggle-arrow.-open {
  border-radius: 10px 10px 0 0;
  background: url(../images/ico_toggle_minus.png) 95% center no-repeat;
  background-size:20px auto;
}
.m .faq-wrap-content-info .toggle-arrow.-open {
  width: 100%;
  background: url(../images/ico_toggle_minus.png) 95% center no-repeat;
  background-size:14px auto;
}
.s .faq-wrap-content-info .toggle-arrow.-open {
  width: 100%;
  background: url(../images/ico_toggle_minus.png) 95% center no-repeat;
  background-size:14px auto;
}
.faq-wrap-content-info .toggle-target {
  display:none;
  padding: 0 85px 30px 85px;
  font-size: 1.4rem;
  line-height:1.6;
  text-align:left;
  background: #fff;
  border-radius: 0 0 8px 8px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.05);
}
.m .faq-wrap-content-info .toggle-target {
  padding:10px 20px 20px 20px;
  width: 100%;
}
.s .faq-wrap-content-info .toggle-target {
  padding:10px 20px 20px 20px;
  width: 100%;
}

.red{
	color: #f5314b;
}
