@charset "UTF-8";
/* ex. @extend .font-notosans; */
.font-notosans, body, table tr th, table tr td, .hint, .accordion .label, .accordion .content, .flow .box .ttl, .price .ttl, .forall .hint .ttl, .forall .hint p, section > .contact .info .cardarea .ttl, section > .contact .lawyer ul li .post, section > .contact .lawyer ul li .name, section > .contact .lawyer ul li .affi, section > .contact .lawyer ul li .cont p:not(:last-child), footer .address, footer .copy { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }

.font-roboto, section > .contact .lawyer ul li .roman { font-family: "Roboto", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-variation-settings: "wdth" 75; }

.font-opensans, .card .contact .tel { font-family: "Open Sans", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-variation-settings: "wdth" 75; }

.font-zenmaru-medium, h1, header .nav ul li a, .card .mess p, .card .contact .mail, #spmenu .pagelink { font-family: "Zen Maru Gothic", sans-serif; font-weight: 500; font-style: normal; }

.font-zenmaru-bold { font-family: "Zen Maru Gothic", sans-serif; font-weight: 700; font-style: normal; }

body { font-size: 1em; color: #444444; overflow-x: hidden; }

img { width: 100%; height: auto; transition: all 0.3s; }

a { text-decoration: none; }

a:hover img { opacity: 0.8; }

.inner { max-width: 1128px; width: auto; margin: 0 auto; position: relative; text-align: center; }

.inner02 { max-width: 744px; width: auto; margin: 0 auto; position: relative; text-align: center; }

@media screen and (max-width: 768px) { .inner { margin: 0 5%; }
  .inner02 { margin: 0 5%; max-width: 100%; } }
h1 { color: #68BA61; font-size: 3em; margin-bottom: 64px; }
h1 .hint { font-size: 1rem; }

@media screen and (max-width: 768px) { h1 { font-size: 1.75em; margin-bottom: 24px; line-height: 1.5em; } }
p { text-align: left; line-height: 1.5em; margin-bottom: 1em; }

span.yellow { background: #FFFF66; }

table { width: 100%; border: 1px solid #cccccc; margin-bottom: 32px; }
table tr { border: 1px solid #cccccc; }
table tr th { padding: 15px; background: #f7f7f7; color: #68BA61; font-size: 1.125em; font-weight: bold; text-align: left; }
table tr td { vertical-align: middle; padding: 15px; text-align: left; border: 1px solid #cccccc; }

table.last { margin-bottom: 50px; }

ol { text-align: left; margin-bottom: 1em; line-height: 1.5em; list-style: decimal; padding-left: 2em; }

/*------------------------------------------------ header
------------------------------------------------*/
header { margin-bottom: 23px; }
header .nav { border-color: #68BA61; border-width: 4px; border-radius: 8px; border-style: solid; background: #ffffff; top: 0; transform: translateY(-50%); }
header .nav ul { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 25px 0; gap: 32px; }
header .nav ul li { position: relative; }
header .nav ul li a { color: #68BA61; font-size: 1.5em; display: inline-block; }
header .nav ul li:not(:first-of-type)::before { content: ""; border-left: 4px solid #68BA61; border-radius: 2px; position: relative; left: -16px; top: -2px; }
header .spnav { display: none; }

.card { position: absolute; top: 0; right: 10.83%; width: 420px; padding: 4px; border-radius: 0 0 8px 8px; background: #ffffff; }
.card .logo { margin: 32px; }
.card .mess { background: #f7f7f7; padding: 16px 0; }
.card .mess p { font-size: 1.125em; line-height: 1.44; text-align: center; margin-bottom: 0; }
.card .contact { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-around; -ms-flex-pack: distribute; justify-content: space-around; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.card .contact .tel { -webkit-align-self: stretch; -ms-flex-item-align: stretch; align-self: stretch; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; padding: 16px 16px; font-size: 1.875em; letter-spacing: 0.072em; line-height: 1.5rem; color: #ffffff; text-align: center; background: #68BA61; }
.card .contact .tel i { font-size: 1.5rem; padding-right: 5px; }
.card .contact .mail { -webkit-align-self: stretch; -ms-flex-item-align: stretch; align-self: stretch; padding: 16px; font-size: 1.25em; line-height: 1.5rem; color: #ffffff; text-align: center; background: #59A353; }
.card .contact .mail i { font-size: 1.25rem; padding-right: 5px; }

#spmenu { position: fixed; top: 0; left: 100%; width: 100%; background: #ffffff; transition: .3s all; z-index: 50; overflow: auto; height: 100%; }
#spmenu .pagelink { padding: 70px 5% 70px 10%; margin-bottom: 160px; font-size: 1.5em; }
#spmenu .pagelink li { position: relative; padding-left: 20px; }
#spmenu .pagelink li a { color: #68BA61; }
#spmenu .pagelink li:before { content: ""; border: 2px solid #68BA61; position: absolute; left: 0; height: 100%; }
#spmenu .pagelink li:not(:last-of-type) { margin-bottom: 32px; }
#spmenu .cardbox { background: #68BA61; padding: 15px; }
#spmenu .cardbox .card { position: relative; transform: none; left: 0; width: 100%; }
#spmenu .spnav { display: block; position: absolute; right: 15px; top: 15px; width: 40px; height: 40px; border: 2px solid #ffffff; border-radius: 50%; }
#spmenu .spnav #sp_close { width: 40px; height: 40px; cursor: pointer; position: relative; }
#spmenu .spnav #sp_close .bar { display: inline-block; width: 24px; height: 2px; background-color: #000000; position: absolute; left: 6px; transition: .15s ease-in-out; }
#spmenu .spnav #sp_close #bar01 { top: 11px; background-color: #ffffff; }
#spmenu .spnav #sp_close #bar02 { top: 17px; background-color: #ffffff; }
#spmenu .spnav #sp_close #bar03 { top: 23px; background-color: #ffffff; }
#spmenu .spnav #sp_close.active #bar01 { top: 10px; transform: rotate(45deg); background-color: #68BA61; }
#spmenu .spnav #sp_close.active #bar02 { width: 0; }
#spmenu .spnav #sp_close.active #bar03 { top: 10px; transform: rotate(-45deg); background-color: #68BA61; }

#spmenu.active { left: 0; }

@media screen and (max-width: 768px) { header { overflow: hidden; position: relative; }
  header .spnav { display: block; position: absolute; right: 15px; top: 15px; width: 40px; height: 40px; border: 2px solid #ffffff; border-radius: 50%; }
  header .spnav #sp_toggle { width: 40px; height: 40px; cursor: pointer; position: relative; }
  header .spnav #sp_toggle .bar { display: inline-block; width: 24px; height: 2px; background-color: #000000; position: absolute; left: 6px; transition: .15s ease-in-out; }
  header .spnav #sp_toggle #bar01 { top: 11px; background-color: #ffffff; }
  header .spnav #sp_toggle #bar02 { top: 17px; background-color: #ffffff; }
  header .spnav #sp_toggle #bar03 { top: 23px; background-color: #ffffff; }
  header .spnav #sp_toggle.active #bar01 { top: 10px; transform: rotate(45deg); background-color: #68BA61; }
  header .spnav #sp_toggle.active #bar02 { width: 0; }
  header .spnav #sp_toggle.active #bar03 { top: 10px; transform: rotate(-45deg); background-color: #68BA61; }
  .card { position: absolute; right: 0; left: 5%; width: 90%; border-radius: 8px; top: 100%; transform: translateY(calc(-100% - 20px)); }
  .card .logo { margin: 24px; }
  .card .mess { font-size: 0.875em; }
  .card .contact .tel { font-size: 1.5em; padding: 8px; }
  .card .contact .mail { font-size: 1em; padding: 8px; } }
/*------------------------------------------------ contents
------------------------------------------------*/
.box01 { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }
.box01 > div { -webkit-flex: 0 1 58%; -ms-flex: 0 1 58%; flex: 0 1 58%; }

.image01 { position: absolute; right: 0; top: calc(5em + 64px); overflow: hidden; }
.image01 img { width: auto; position: relative; right: -40px; }

.box02 { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; gap: 50px; }
.box02 .image02 img { width: auto; }

.image03 { margin-bottom: 32px; }

.hint { font-size: 0.875em; text-align: right; }
.hint span { color: #68BA61; font-weight: bold; }

@media screen and (max-width: 768px) { .box01 > div { -webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; flex: 0 1 100%; }
  .image01 { position: relative; top: 0; }
  .image01 img { right: 30px; }
  .box02 { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 24px; }
  .box02 .image02 img { width: 100%; } }
/*------------------------------------------------ accordion
------------------------------------------------*/
.accordion .toggle { display: none; }
.accordion .label { font-weight: bold; font-size: 1.25em; margin: 25px 0; padding-left: 20px; color: #68BA61; text-align: left; display: block; position: relative; }
.accordion .label.noactive { color: #444444; }
.accordion .label::before { content: "＋"; position: absolute; right: 0; color: #68BA61; }
.accordion .label::after { content: "・"; position: absolute; left: 0; top: 0; }
.accordion .label.noactive::before { content: ""; }
.accordion .content { padding: 25px; background: #f7f7f7; -webkit-backface-visibility: hidden; backface-visibility: hidden; transform: translateZ(0); transition: all 0.3s; height: 4px; margin-bottom: 10px; padding: 0 20px; overflow: hidden; }
.accordion .toggle:checked + .label:not(.noactive) + .content { height: auto; padding: 20px; transition: all .3s; }
.accordion .toggle:checked + .label:not(.noactive)::before { content: "ー"; }

@media screen and (max-width: 768px) { .accordion .label { font-size: 1em; line-height: 1.5em; } }
/*------------------------------------------------ flow
------------------------------------------------*/
.flow .box { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; gap: 80px; background: #f7f7f7; padding: 25px; border-radius: 8px; position: relative; }
.flow .box .ttl { font-size: 1.125em; font-weight: bold; text-align: left; color: #68BA61; margin-bottom: 0; white-space: nowrap; }
.flow .box .anno p:last-of-type { margin-bottom: 0; }
.flow .arrow { text-align: left; padding: 25px 60px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: center; -ms-flex-align: center; align-items: center; gap: 30px; }
.flow .arrow img { width: auto; }
.flow .arrow .anno { margin-bottom: 0; }

@media screen and (max-width: 768px) { .flow .box { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 25px; padding: 25px 15px; }
  .flow .box .ttl { white-space: normal; }
  .flow .arrow { padding: 15px 30px; } }
/*------------------------------------------------ price
------------------------------------------------*/
.price .ttl { color: #68BA61; font-size: 1.125em; font-weight: bold; }
.price hr { height: 7px; border: none; background: #f7f7f7; margin-bottom: 1.5em; }

/*------------------------------------------------ price
------------------------------------------------*/
.forall .info { margin-bottom: 64px; }
.forall .info p:last-of-type { margin-bottom: 0; }
.forall .chart { background: #f7f7f7; padding: 32px; position: relative; margin-bottom: 48px; }
.forall .chart:before { content: ""; width: 34px; height: 34px; background: #f7f7f7; position: absolute; left: 50%; top: 100%; transform: rotate(45deg) translate(-50%, -25%); }
.forall .hint { background: #f7f7f7; padding: 32px; }
.forall .hint .ttl { color: #68BA61; font-size: 1.125em; font-weight: bold; margin-bottom: 1.5em; }
.forall .hint p { font-size: 1em; margin-bottom: 0; }

@media screen and (max-width: 768px) { .forall .info { margin-bottom: 25px; } }
/*------------------------------------------------ contact
------------------------------------------------*/
section > .contact { background: #f7f7f7; padding: 64px 0; }
section > .contact h1 { margin-bottom: 32px; }
section > .contact .overview { margin-bottom: 64px; text-align: center; }
section > .contact .info { background: #ffffff; padding: 64px 0; margin-bottom: 25px; }
section > .contact .info > .inner02 { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; text-align: left; }
section > .contact .info .cardarea { -webkit-align-self: center; -ms-flex-item-align: center; align-self: center; }
section > .contact .info .cardarea .ttl { font-weight: bold; margin-bottom: 25px; }
section > .contact .info .cardarea .address { line-height: 2em; }
section > .contact .info .cardarea .address a { font-size: 0.875em; color: #444444; text-decoration: underline; }
section > .contact .lawyer ul { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; gap: 25px; }
section > .contact .lawyer ul li { -webkit-flex: 0 1 33%; -ms-flex: 0 1 33%; flex: 0 1 33%; background: #ffffff; padding: 32px 25px; }
section > .contact .lawyer ul li .post { line-height: 1.5em; margin-bottom: 15px; text-align: center; }
section > .contact .lawyer ul li .name { font-weight: bold; font-size: 1.5em; line-height: 1.46em; margin-bottom: 5px; text-align: center; }
section > .contact .lawyer ul li .roman { font-size: 1.125em; line-height: 1.33em; margin-bottom: 40px; text-align: center; }
section > .contact .lawyer ul li .photo { margin: 0 55px 25px; }

@media screen and (max-width: 768px) { section > .contact { padding: 32px 0 16px; }
  section > .contact .info { padding: 25px 0; }
  section > .contact .info > .inner02 { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; gap: 32px; }
  section > .contact .info .cardarea .address { font-size: 0.875em; }
  section > .contact .lawyer ul { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
  section > .contact .lawyer ul li { -webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; flex: 0 1 100%; } }
/*------------------------------------------------ footer
------------------------------------------------*/
footer { padding: 64px 0; text-align: center; }
footer .logo { margin-bottom: 32px; }
footer .logo img { width: auto; }
footer .address { font-size: 0.875em; line-height: 2em; margin-bottom: 50px; }
footer .address p { text-align: center; }
footer .address a { font-size: 0.875em; color: #444444; text-decoration: underline; }
footer .copy { font-size: 0.875em; }
footer .copy p { text-align: center; }

@media screen and (max-width: 768px) { footer { padding: 32px 0 50px; } }
/*------------------------------------------------ bxslider
------------------------------------------------*/
.slider { margin-bottom: 80px; }

/*------------------------------------------------ section
------------------------------------------------*/
section { position: relative; }

section:not(:last-of-type) { margin-bottom: 100px !important; }

@media screen and (max-width: 768px) { section:not(:last-of-type) { margin-bottom: 48px !important; } }
/*------------------------------------------------ GOTO TOP
------------------------------------------------*/
#top-scroll { position: relative; z-index: 100; margin: 0; padding: 0; }

#page-top { display: block; position: fixed; z-index: 9999; right: 3.125em; bottom: -250px; width: 100px; height: 80px; padding: 0; transition: all 0.5s linear; -webkit-transition: all 0.5s linear; }

#page-top:hover { animation: gototop 0.3s forwards; }

@keyframes gototop { 0% { transform: rotate(0); }
  30% { transform: rotate(20deg); }
  50% { transform: rotate(10deg); }
  100% { transform: rotate(15deg); } }
@media screen and (max-width: 768px) { #page-top { right: 1em; } }
/*------------------------------------------------ 汎用
------------------------------------------------*/
.slick-slide { height: auto !important; }

.tx_l { text-align: left !important; }

.tx_c { text-align: center !important; }

.tx_r { text-align: right !important; }

.vm { vertical-align: middle !important; }

.vt { vertical-align: top !important; }

.vb { vertical-align: bottom !important; }

.tx_slarge { font-size: 115% !important; }

.tx_large { font-size: 120% !important; }

.tx_xlarge { font-size: 150% !important; }

.tx_xxlarge { font-size: 200% !important; }

.tx_small { font-size: 90% !important; }

.tx_midium { font-size: 100% !important; }

.tx_xsmall { font-size: 75% !important; }

.f_bold { font-weight: bold !important; }

.f_normal { font-weight: normal !important; }

.txt_under { text-decoration: underline !important; }

.txt_strike { text-decoration: line-through !important; }

.inblock { display: inline-block !important; }

.ls_w { letter-spacing: 0.2em; }

.ls_m { letter-spacing: 0.1em; }

.relative { position: relative !important; }

.lh0 { line-height: 0em !important; }

.lh1 { line-height: 1em !important; }

.lh13 { line-height: 1.3em !important; }

.lh15 { line-height: 1.5em !important; }

.lh2 { line-height: 2em !important; }

ul.note { list-style: none !important; }

ul.note li { text-indent: -1em !important; padding-left: 1em !important; }

ul.note li:before { content: "※"; }

.note01 { padding-left: 1em !important; text-indent: -1em !important; }

.note02 { padding-left: 2em !important; text-indent: -2em !important; }

.note03 { padding-left: 3em !important; text-indent: -3em !important; }

.note04 { padding-left: 4em !important; text-indent: -4em !important; }

.note05 { padding-left: 5em !important; text-indent: -5em !important; }

.note06 { padding-left: 6em !important; text-indent: -6em !important; }

.note07 { padding-left: 7em !important; text-indent: -7em !important; }

.note08 { padding-left: 8em !important; text-indent: -8em !important; }

.note09 { padding-left: 9em !important; text-indent: -9em !important; }

.note10 { padding-left: 10em !important; text-indent: -10em !important; }

.note11 { padding-left: 11em !important; text-indent: -11em !important; }

.note12 { padding-left: 12em !important; text-indent: -12em !important; }

.red { color: #BF6A67 !important; }

.white { color: #ffffff !important; }

.black { color: #333333 !important; }

.w_full { width: 100% !important; }

.wauto { width: auto !important; }

.w100 { width: 100px !important; }

.w200 { width: 200px !important; }

.w300 { width: 300px !important; }

.w400 { width: 400px !important; }

.w500 { width: 500px !important; }

.w600 { width: 600px !important; }

.w03em { width: 3em !important; }

.w04em { width: 4em !important; }

.w05em { width: 5em !important; }

.w06em { width: 6em !important; }

.w07em { width: 7em !important; }

.w08em { width: 8em !important; }

.w09em { width: 9em !important; }

.w10em { width: 10em !important; }

.w11em { width: 11em !important; }

.w12em { width: 12em !important; }

.w13em { width: 13em !important; }

.w14em { width: 14em !important; }

.w15em { width: 15em !important; }

.w16em { width: 16em !important; }

.w17em { width: 17em !important; }

.w18em { width: 18em !important; }

.w19em { width: 19em !important; }

.w20em { width: 20em !important; }

.w21em { width: 21em !important; }

.w22em { width: 22em !important; }

.w23em { width: 23em !important; }

.w24em { width: 24em !important; }

.w25em { width: 25em !important; }

.w26em { width: 26em !important; }

.w27em { width: 27em !important; }

.w28em { width: 28em !important; }

.w29em { width: 29em !important; }

.w30em { width: 30em !important; }

.bdr { border: solid 1px #dddddd !important; }

.bdr_none { border: none !important; }

.radius05 { -webkit-border-radius: 5px !important; -moz-border-radius: 5px !important; border-radius: 5px !important; }

.radius10 { -webkit-border-radius: 10px !important; -moz-border-radius: 10px !important; border-radius: 10px !important; }

.radius_top05 { -webkit-border-top-left-radius: 5px !important; -webkit-border-top-right-radius: 5px !important; -webkit-border-bottom-left-radius: 0px !important; -webkit-border-bottom-right-radius: 0px !important; -moz-border-radius: 5px 5px 0 0 !important; border-radius: 5px 5px 0 0 !important; }

.radius_top10 { -webkit-border-top-left-radius: 10px !important; -webkit-border-top-right-radius: 10px !important; -webkit-border-bottom-left-radius: 0px !important; -webkit-border-bottom-right-radius: 0px !important; -moz-border-radius: 10px 10px 0 0 !important; border-radius: 10px 10px 0 0 !important; }

.radius_bottom05 { -webkit-border-top-left-radius: 0px !important; -webkit-border-top-right-radius: 0px !important; -webkit-border-bottom-left-radius: 5px !important; -webkit-border-bottom-right-radius: 5px !important; -moz-border-radius: 0 0 5px 5px !important; border-radius: 0 0 5px 5px !important; }

.radius_bottom10 { -webkit-border-top-left-radius: 0px !important; -webkit-border-top-right-radius: 0px !important; -webkit-border-bottom-left-radius: 10px !important; -webkit-border-bottom-right-radius: 10px !important; -moz-border-radius: 0 0 10px 10px !important; border-radius: 0 0 10px 10px !important; }

.mauto { margin: auto !important; }

.mt0 { margin-top: 0px !important; }

.mt01 { margin-top: 1px !important; }

.mt05 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px !important; }

.mt40 { margin-top: 40px !important; }

.mt50 { margin-top: 50px !important; }

.mb0 { margin-bottom: 0px !important; }

.mb05 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb15 { margin-bottom: 15px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb50 { margin-bottom: 50px !important; }

.mb60 { margin-bottom: 60px !important; }

.mb70 { margin-bottom: 70px !important; }

.mb80 { margin-bottom: 80px !important; }

.mb90 { margin-bottom: 90px !important; }

.mb100 { margin-bottom: 100px !important; }

.mb200 { margin-bottom: 200px !important; }

.ml0 { margin-left: 0px !important; }

.ml05 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml15 { margin-left: 15px !important; }

.ml20 { margin-left: 20px !important; }

.ml30 { margin-left: 30px !important; }

.ml40 { margin-left: 40px !important; }

.ml50 { margin-left: 50px !important; }

.mr0 { margin-right: 0px !important; }

.mr01 { margin-right: 1px !important; }

.mr05 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr15 { margin-right: 15px !important; }

.mr20 { margin-right: 20px !important; }

.mr30 { margin-right: 30px !important; }

.mr40 { margin-right: 40px !important; }

.mr50 { margin-right: 50px !important; }

.pt0 { padding-top: 0 !important; }

.pt05 { padding-top: 5px !important; }

.pt10 { padding-top: 10px !important; }

.pt15 { padding-top: 15px !important; }

.pt20 { padding-top: 20px !important; }

.pt30 { padding-top: 30px !important; }

.pt40 { padding-top: 40px !important; }

.pb0 { padding-bottom: 0 !important; }

.pb05 { padding-bottom: 5px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb15 { padding-bottom: 15px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb40 { padding-bottom: 40px !important; }

.pl0 { padding-left: 0 !important; }

.pl05 { padding-left: 5px !important; }

.pl10 { padding-left: 10px !important; }

.pl15 { padding-left: 15px !important; }

.pl20 { padding-left: 20px !important; }

.pl30 { padding-left: 30px !important; }

.pl40 { padding-left: 40px !important; }

.pr0 { padding-right: 0 !important; }

.pr05 { padding-right: 5px !important; }

.pr10 { padding-right: 10px !important; }

.pr15 { padding-right: 15px !important; }

.pr20 { padding-right: 20px !important; }

.pr30 { padding-right: 30px !important; }

.pr40 { padding-right: 40px !important; }

.pad0 { padding: 0 !important; }

.pad05 { padding: 5px !important; }

.pad10 { padding: 10px !important; }

.pad15 { padding: 15px !important; }

.pad20 { padding: 20px !important; }

.pad30 { padding: 30px !important; }

.pad40 { padding: 40px !important; }

.plr05 { padding-left: 5px !important; padding-right: 5px !important; }

.plr10 { padding-left: 10px !important; padding-right: 10px !important; }

.plr15 { padding-left: 15px !important; padding-right: 15px !important; }

.plr20 { padding-left: 20px !important; padding-right: 20px !important; }

.plr30 { padding-left: 30px !important; padding-right: 30px !important; }

.plr40 { padding-left: 40px !important; padding-right: 40px !important; }

.fl { float: left !important; }

.fr { float: right !important; }

.visi { display: block !important; }

.hide { display: none !important; }

.ls-disc { list-style: disc !important; line-height: 2em; }

.ls-none { list-style: none !important; }

/* clearfix */
.cls { clear: both; }

/* For modern browsers */
.cf:before, .cf:after { content: ""; display: table; }

.cf:after { clear: both; }

/* For IE 6/7 (trigger hasLayout) */
.cf { zoom: 1; }

/* clearfixここまで */
/* 汎用ここまで */
.pc { display: block !important; }

.sp { display: none !important; }

@media screen and (max-width: 768px) { .pc { display: none !important; }
  .sp { display: block !important; }
  .nosp { display: none; } }
.fadeIn_up { opacity: 0; transform: translate(0, 25%); transition: 1s; }

.fadeIn_up.is-show { transform: translate(0, 0); opacity: 1; }
