/*=============================================================
  common.css
---------------------------------------------------------------

01. common layout
02. header
03. footer
04. main contents
05. mail
06. thanks
07. media query
08. mobile
09. helper

===============================================================
01. common layout
=============================================================*/

.preload * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    transition: none !important;
}

.wf-robot {
    font-family: 'Roboto', sans-serif;
}

.pc,
.pc-alt {
	display: inline-block;
}

.sp,
.sp-alt {
	display: none;
}

.central {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    -webkit-transform: translateX( -50% ) translateY( -50% );
    -moz-transform: translateX( -50% ) translateY( -50% );
    -ms-transform: translateX( -50% ) translateY( -50% );
    transform: translateX( -50% ) translateY( -50% );
}

.central-y {
    position: absolute;
    top: 50%;
    z-index: 1;
    -webkit-transform: translateY( -50% );
    -moz-transform: translateY( -50% );
    -ms-transform: translateY( -50% );
    transform: translateY( -50% );
}

.text-yellow {
    color: #eef526;
}

#loading-layer,
#bg-wrapper {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    overflow: hidden;
}

#loading-layer {
    background: #0a916f;
    z-index: 10;
    transition: all ease 600ms;
}

.loaded #loading-layer {
    opacity: 0;
    visibility: hidden;
}

#bg,
#bg-p {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

#visual {
    width: 100%;
    /* margin-bottom: 5%; */
    background: #008463;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

/*
#visual::before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: #0c896a;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    transition: all ease 1000ms;
    transition-delay: 5000ms;
    overflow: hidden;
}

.loaded #visual::before {
    height: 0;
}
*/

#visual img {
    display: block;
    vertical-align: top;
    overflow: hidden;
}

#visual-img,
#visual-img-p {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    /* transform: scale( 1.8 );
    transition: all ease 1100ms;
    transition-delay: 4900ms; */
    overflow: hidden;
}

#visual-img {
    background-image: url( /common/img/visual.jpg );
}

#visual-img-p {
    background-image: url( /common/img/visual-p.jpg );
}

.loaded #visual-img,
.loaded #visual-img-p {
    transform: scale( 1.00001 );
}

#visual #main-title-alt h1 {
    width: 65%;
    top: 46%;
}

#visual #main-title-alt h1 img {
    display: block;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: all ease 800ms;
    transition-delay: 300ms;
    transform: scale( 0.7 );
    opacity: 0;
}

.loaded #visual #main-title-alt h1 img {
    transform: scale( 1.00001 );
    opacity: 0.99999;
}

#visual #intro-01,
#visual #main-title,
#visual #main-title-alt {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}

.loaded #visual #intro-01 {
    transform: translateY( -90% );
    opacity: 0;
    transition: all ease 1000ms;
    transition-delay: 4000ms;
    visibility: hidden;
}

#visual #intro-01 .central {
    width: 55%;
}

#visual #intro-01 .central img {
    opacity: 0;
}

#visual #intro-01 .central img:nth-of-type( 1 ) {
    transform: scale( 0.3 ) rotate( 180deg );
    transition: all ease 1700ms;
    transition-delay: 300ms;
}

.loaded #visual #intro-01 .central img:nth-of-type( 1 ) {
    transform: scale( 1 ) rotate( 0 );
    opacity: 0.99999;
}

#visual #intro-01 .central img:nth-of-type( 2 ) {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transform: scale( 1.3 ) rotate( 0deg );
    transition: all ease 1400ms;
    transition-delay: 600ms;
}

.loaded #visual #intro-01 .central img:nth-of-type( 2 ) {
    transform: scale( 1 ) rotate( 0 );
    opacity: 0.99999;
}

#visual #main-title .central {
    width: 69%;
    top: 48%;
}

#visual #main-title .central img {
    transition: all ease 500ms;
    opacity: 0;
}

/*
.loaded #visual #main-title .central img:nth-of-type( 1 ) {
    opacity: 0.99999;
}
*/

#visual #main-title .central img:nth-of-type( 2 ),
#visual #main-title .central img:nth-of-type( 3 ),
#visual #main-title .central img:nth-of-type( 4 ),
#visual #main-title .central img:nth-of-type( 5 ) {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#visual #main-title .central img:nth-of-type( 1 ),
#visual #main-title .central img:nth-of-type( 2 ),
#visual #main-title .central img:nth-of-type( 3 ) {
    transform: translateY( 40% );
}

.loaded #visual #main-title .central img:nth-of-type( 1 ),
.loaded #visual #main-title .central img:nth-of-type( 2 ),
.loaded #visual #main-title .central img:nth-of-type( 3 ) {
    transform: translateY( 1px );
    opacity: 0.99999;
}

#visual #main-title .central img:nth-of-type( 4 ),
#visual #main-title .central img:nth-of-type( 5 ) {
    transform: translateY( 40% )  scale( 0.3 );
}

.loaded #visual #main-title .central img:nth-of-type( 4 ),
.loaded #visual #main-title .central img:nth-of-type( 5 ) {
    width: 100%;
    transform: translateY( 1px )  scale( 0.99999 );
    opacity: 0.99999;
}

#visual #main-title .central img:nth-of-type( 1 ) {
    transition-delay: 4300ms;
}

#visual #main-title .central img:nth-of-type( 2 ) {
    transition-delay: 4400ms;
}

#visual #main-title .central img:nth-of-type( 3 ) {
    transition-delay: 4500ms;
}

#visual #main-title .central img:nth-of-type( 4 ) {
    transition-delay: 4600ms;
}

#visual #main-title .central img:nth-of-type( 5 ) {
    transition-delay: 4700ms;
}

#visual #icon-scroll-wrapper {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    text-align: center;
    line-height: 0;
}

#visual #icon-scroll-wrapper #icon-scroll {
    display: inline-block;
    width: 15px;
}

#visual #icon-scroll-wrapper #icon-scroll img {
    padding-bottom: 4px;
}

#visual #icon-scroll-wrapper #icon-scroll #scroll-bar,
#visual #icon-scroll-wrapper #icon-scroll #scroll-bar::before {
    width: 1px;
    height: 60px;
}

#visual #icon-scroll-wrapper #icon-scroll #scroll-bar {
    display: inline-block;
    background: rgba( 255,255,255,0.4 );
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#visual #icon-scroll-wrapper #icon-scroll #scroll-bar::before {
    display: block;
    content: "";
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    animation:  icon-scroll-bar-motion ease infinite 2000ms;
}

@keyframes icon-scroll-bar-motion {
    0%{ transform: translateY( -100% ); }
    50%{ transform: translateY( 100% ); }
    100%{ transform: translateY( 100% ); }
}

#contents {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.mass {
    margin-bottom: 60px;
}

.mass.mb-minus {
    margin-bottom: 50px;
}

.mass.mb-minus-more {
    margin-bottom: 40px;
}

.mass:last-of-type,
.mass.mb-0 {
    margin-bottom: 0;
}

.mini-mass {
    padding-bottom: 30px;
    border-bottom: solid 1px #ddd;
    margin-bottom: 25px;
}

.mini-mass.no-mb-bb {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
}

.bt {
    border-top: solid 1px #eee;
}

.inner {
    width: 92%;
    margin: 0 auto;
}

.inner.narrow {
    width: 90%;
}

.inner.ptb-little-plus {
    padding: 30px 0 50px;
}

.inner.ptb-plus {
    padding: 40px 0 50px;
}

.inner.ptb-plus.mobile-pb-minus {
    padding: 40px 0 45px;
}

.inner.ptb-plus-more {
    padding: 60px 0 52px;
}

.base {
    padding: 40px 50px 50px 50px;
}

.white-alpha {
    background: rgba( 255,255,255,0.97 );
}

.white-no-alpha {
    background: #fff;
}

.green-alpha {
    background: rgba( 0,132,99,0.97 );
    color: #fff;
}

.gray-alpha {
    background: rgba( 55,55,55,0.9 );
    color: #fff;
}

.light-gray-alpha {
    background: rgba( 240,240,240,0.97 );
}

.tit-01 {
    margin-bottom: 15px;
    font-size: 34px;
    line-height: 1.6;
}

.tit-01.mb-minus {
    margin-bottom: 5px;
}

.tit-01.mb-plus {
    margin-bottom: 20px;
}

.tit-02 {
    margin-bottom: 15px;
    font-size: 24px;
    line-height: 1.6;
}

p {
    margin-bottom: 15px;
}

p:last-of-type {
    margin-bottom: 0;
}

p.mb-default {
    margin-bottom: 15px;
}

p.mb-plus {
    margin-bottom: 25px;
}

p.mb-plus-alt {
    margin-bottom: 22px;
}

p.mb-super-plus {
    margin-bottom: 30px;
}

p.big {
    margin-bottom: 0;
    font-size: 26px;
}

.super-big {
    font-size: 160%;
}

.big {
    font-size: 140%;
}

.little-big {
    font-size: 120%;
}

.text-green {
    color: #008463;
}

.text-light-green {
    color: #8ebb7e;
}

em {
    font-weight: bold;
    font-size: 130%;
    font-style: normal;
}

.bold {
    font-weight: bold;
}

.nowrap {
    white-space: nowrap;
}

.icon-in-text {
    display: inline-block;
    width: 17px;
    margin: 0 3px;
    vertical-align: middle;
    position: relative;
    top: -2px;
    left: 0;
    z-index: 1;
}

.text-marker {
	background: linear-gradient(#fff 30%, #FEECD2 70%);
}

.sub-p {
	font-size: 15px;
	margin-bottom: 0;
}

/*
 * list-01
 */

.list-01 li {
    padding: 16px 0 18px;
    border-top: solid 1px rgba( 255,255,255,0.1 );
}

.list-01 li:last-of-type {
    border-bottom: solid 1px rgba( 255,255,255,0.1 );
}

.list-01.line-black li {
    border-top: solid 1px rgba( 0,0,0,0.1 );
}

.list-01.line-black li:last-of-type {
    border-bottom: solid 1px rgba( 0,0,0,0.1 );
}

/*
 * list-02
 */

.list-02 {
    margin-bottom: 30px;
}

.list-02 li {
    display: inline-block;
    width: calc( 100% / 3 );
    padding: 16px 0 18px;
    border-bottom: solid 1px rgba( 255,255,255,0.1 );
    border-right: solid 1px rgba( 255,255,255,0.1 );
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 120%;
    text-align: center;
    vertical-align: top;
}

.list-02.bg-green li {
    background: #008463;
    color: #fff;
}

.list-02.bg-light-green li {
    background: #8ebb7e;
    color: #fff;
}

.list-02.bg-light-green li.gray {
    background: #eee;
    color: #999;
}

/*
 * list-order-number
 */

.list-order-number li {
    padding: 4px 0 20px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.list-order-number li:last-of-type {
    padding-bottom: 30px;
}

.list-order-number li .lefter {
    width: 40px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.list-order-number li .lefter .num {
    width: 40px;
    height: 40px;
    padding: 10px;
    border: solid 1px #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 100px;
    border-radius: 100px;
    text-align: center;;
    vertical-align: middle;
    line-height: 1;
    overflow: hidden;
    transition: all ease 600ms;
    transform: scale( 0.5 );
    opacity: 0;
}

.active .list-order-number li .lefter .num {
    transform: scale( 1 );
    opacity: 0.99999;
}

.list-order-number li .lefter .num img {
    vertical-align: top;
}

.list-order-number li .lefter::before {
    display: inline-block;
    content: "";
    width: 1px;
    height: 0;
    background: #fff;
    position: absolute;
    top: 40px;
    left: 19px;
    z-index: 1;
    transition: all ease 600ms;
}

.active .list-order-number li .lefter::before {
    height: calc( 100% - 40px );
}

.list-order-number li:last-of-type .lefter::before {
    display: none;
}

.list-order-number li .righter {
    width: calc( 100% - 55px );
    padding-left: 55px;
    transition: all ease 600ms;
    opacity: 0;
}

.active .list-order-number li .righter {
    opacity: 0.99999;
}

.list-order-number li:nth-of-type( 1 ) .lefter::before,
.list-order-number li:nth-of-type( 1 ) .lefter .num,
.list-order-number li:nth-of-type( 1 ) .righter {
    transition-delay: 600ms;
}

.list-order-number li:nth-of-type( 2 ) .lefter::before,
.list-order-number li:nth-of-type( 2 ) .lefter .num,
.list-order-number li:nth-of-type( 2 ) .righter {
    transition-delay: 900ms;
}

.list-order-number li:nth-of-type( 3 ) .lefter::before,
.list-order-number li:nth-of-type( 3 ) .lefter .num,
.list-order-number li:nth-of-type( 3 ) .righter {
    transition-delay: 1200ms;
}

.list-order-number li:nth-of-type( 4 ) .lefter::before,
.list-order-number li:nth-of-type( 4 ) .lefter .num,
.list-order-number li:nth-of-type( 4 ) .righter {
    transition-delay: 1500ms;
}

.list-order-number li:nth-of-type( 5 ) .lefter::before,
.list-order-number li:nth-of-type( 5 ) .lefter .num,
.list-order-number li:nth-of-type( 5 ) .righter {
    transition-delay: 1800ms;
}

.list-order-number li:nth-of-type( 6 ) .lefter::before,
.list-order-number li:nth-of-type( 6 ) .lefter .num,
.list-order-number li:nth-of-type( 6 ) .righter {
    transition-delay: 2000ms;
}

/*
 * list-cards
 */

.list-cards {
    margin-bottom: 10px;
}

.list-cards li {
    display: inline-block;
    width: 84px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 3px;
}

.list-01.line-black .list-cards li {
    border-top: none;
}

/*
 * basic motion
 */

.elem-00,
.elem-01,
.elem-02,
.elem-03,
.elem-04,
.elem-05,
.elem-06,
.elem-07,
.elem-08,
.elem-09,
.elem-10 {
    transition: all ease 800ms;
    transform: translateY( 20px ) scale( 0.9999999 );
    opacity: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.elem-00 {
    transition-delay: 10ms;
}

.elem-01 {
    transition-delay: 200ms;
}

.elem-02 {
    transition-delay: 400ms;
}

.elem-03 {
    transition-delay: 600ms;
}

.elem-04 {
    transition-delay: 800ms;
}

.elem-05 {
    transition-delay: 1000ms;
}

.elem-06 {
    transition-delay: 1200ms;
}

.elem-07 {
    transition-delay: 1400ms;
}

.elem-08 {
    transition-delay: 1600ms;
}

.elem-09 {
    transition-delay: 1800ms;
}

.elem-10 {
    transition-delay: 2000ms;
}

.active .elem-00,
.active .elem-01,
.active .elem-02,
.active .elem-03,
.active .elem-04,
.active .elem-05,
.active .elem-06,
.active .elem-07,
.active .elem-08,
.active .elem-09,
.active .elem-10 {
    transform: translateY( 0 ) scale( 0.9999999 );
    opacity: 0.99999;
}

/*
 * text link
*/

.text-link-01 {
    color: #fff;
}

.text-link-02 {
    color: #fff;
    text-decoration: none;
    cursor: default;
}

.text-link-03 {
    color: #008463;
}

a.no-deco {
    text-decoration: none;
}

a.no-deco.black {
    color: #222;
}

a.no-deco.white {
    color: #fff;
}

/*
 * .btn-01
*/

.btn-01 {
    display: inline-block;
    width: 100%;
    max-width: 580px;
    padding: 15px 0;
    border: solid 2px #222;
    border-radius: 500px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #222;
    text-align: center;
    text-decoration: none;
    font-size: 140%;
    transition: all ease 300ms;
}

.btn-01:hover {
    border: solid 2px #008463;
    background: #008463;
    color: #fff;
}

.btn-01.white {
    border: solid 2px #fff;
    color: #fff;
}

.btn-01.white:hover {
    color: #008463;
    background: #fff;
}

/*
 * .box-img
*/

.box-img {
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

.box-img.wide {
    padding-top: 48%;
}

/*
 * .row-flex
*/

.row-flex {
    display: flex;
    margin-bottom: 30px;
}

.row-flex > div {
    width: 50%;
    margin: 0 6px;
    background: #fff;
    color: #000;
}

.box-price {
    padding: 30px;
}

.box-price h1 {
    font-size: 130%;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.box-price h1.bb-green {
    border-bottom: solid 2px #008463;
}

.box-price h1.bb-light-green {
    border-bottom: solid 2px #8ebb7e;
}

.box-price p.price-detail {
    font-size: 120%;
}

.shade {
    box-shadow: 0 0 7px rgba( 0,0,0,0.2 );
}

/*
 * .row
*/

.row {
    margin-bottom: 50px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row.mb-0 {
    margin-bottom: 0;
}

.row.bt {
    padding-top: 70px;
    border-top: solid 1px #eee;
}

/*
 * .row.divi
*/

.row.divi {
    padding: 5% 0;
}

.row.divi .box-img {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.row.divi.img-left .box-img {
    left: 0;
}

.row.divi.img-right .box-img {
    right: 0;
}

.row.divi .box-text {
    width: 55%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row.divi.img-left .box-text {
    padding-right: 5%;
    margin-left: 45%;
}

.row.divi.img-right .box-text {
    padding-left: 5%;
}

/*
 * .row.divi-alt
*/

.row.divi-alt {
    padding: 3% 0;
}

.row.divi-alt.pt-0 {
    padding-top: 0;
}

.row.divi-alt.pb-0 {
    padding-bottom: 0;
}

.row.divi-alt.pb-5 {
    padding-bottom: 5px;
}

.row.divi-alt .box-img {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.row.divi-alt.img-left .box-img {
    left: 0;
}

.row.divi-alt.img-right .box-img {
    right: 0;
}

.row.divi-alt .box-text {
    width: 47%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row.divi-alt.img-left .box-text {
    padding-right: 5%;
    margin-left: 53%;
}

.row.divi-alt.img-right .box-text {
    padding-left: 5%;
}

#lp-01 #part-plan-detail .row.divi-alt.img-right .box-img {
    background-image: url( /common/img/img-04.jpg );
}

#lp-01 #part-plan-detail .row.divi-alt.img-left .box-img {
    background-image: url( /common/img/img-05.jpg?v01 );
}

.tit-01.oblique {
    width: 96%;
    margin: 0 auto 22px;
    padding: 14px 0;
    color: #fff;
    text-align: center;
    transform: skewX( -10deg );
}

.tit-01.oblique.green-01 {
    background: #8ebb7e;
}

.tit-01.oblique.green-02 {
    background: #008463;
}

p.bb-green {
    padding-bottom: 15px;
    border-bottom: solid 1px #008463;
    margin-bottom: 12px;
}

.double-line-wrapper,
.double-line-inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.double-line-wrapper.green-01,
.double-line-inner.green-01 {
    border: solid 1px #8ebb7e;
}

.double-line-wrapper.green-02,
.double-line-inner.green-02 {
    border: solid 1px #008463;
}

.double-line-wrapper {
    padding: 1px;
}

.double-line-inner {
    padding: 20px 25px;
}

/*
 * .row.half-fit
*/

.row.half-fit .box-img,
.row.half-fit .box-text {
    width: 50%;
}

.row.half-fit .box-img {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.row.half-fit .box-text {
    padding: 40px 50px 50px 50px;
    margin-left: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*
 * #part-rule
 */

#part-rule .lefter,
#part-rule .righter {
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
}

#part-rule .lefter {
    padding-right: 1.5%;
}

#part-rule .righter {
    padding-left: 1.5%;
}

#part-rule .row section {
    padding-bottom: 16px;
    border-bottom: solid 1px #ddd;
    margin-bottom: 12px;
}

#part-rule .row section:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
}

#part-rule .row section h1 {
    font-size: 20px;
}

#part-rule .row section p {
    font-size: 14px;
}

/*=============================================================
02. header
=============================================================*/

#main-header > h1 {
    width: 240px;
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 2;
}

#main-header > h1 a {
    display: block;
}

#main-header #icon-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 2;
}

#main-header #icon-wrapper a {
    color: #fff;
}

#main-header #icon-wrapper #icon-tel,
#main-header #icon-wrapper #icon-contact {
    position: absolute;
    z-index: 1;
}

#main-header #icon-wrapper #icon-tel {
    top: 20px;
    right: 110px;
}

#main-header #icon-wrapper #icon-tel a {
    display: inline-block;
    padding: 20px 23px 20px 27px;
    -webkit-border-radius: 500px;
    border-radius: 500px;
    background: #008463;
    font-size: 20px;
    letter-spacing: 3px;
    white-space: nowrap;
    transition: all ease 200ms;
}

#main-header #icon-wrapper #icon-tel a span.pc-alt {
    line-height: 1;
    vertical-align: top;
}

#main-header #icon-wrapper #icon-tel a span.pc-alt .size-s {
    font-size: 14px;
    letter-spacing: 1px;
}

#main-header #icon-wrapper #icon-tel a:hover {
    background: #005d5a;
}

#main-header #icon-wrapper #icon-contact,
#main-header #icon-wrapper #icon-contact a {
    width: 160px;
    height: 145px;
}

#main-header #icon-wrapper #icon-contact,
#main-header #icon-wrapper #icon-contact a,
#main-header #icon-wrapper #icon-contact a img {
    -webkit-border-radius: 0px 0px 0px 242px;
    border-radius: 0px 0px 0px 242px;
    overflow: hidden;
}

#main-header #icon-wrapper #icon-contact {
    top: 0;
    right: 0;
    overflow: hidden;
    cursor: pointer;
}

#main-header #icon-wrapper #icon-contact a {
    display: block;
    overflow: hidden;
}

#main-header #icon-wrapper #icon-contact img {
    overflow: hidden;
    vertical-align: top;
}

#main-header #icon-wrapper #icon-contact img:nth-of-type( 2 ),
#main-header #icon-wrapper #icon-contact img:nth-of-type( 3 ),
#main-header #icon-wrapper #icon-contact img:nth-of-type( 4 ) {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#main-header #icon-wrapper #icon-contact img:nth-of-type( 2 ),
#main-header #icon-wrapper #icon-contact img:nth-of-type( 3 ) {
    transition: all ease 300ms;
}

#main-header #icon-wrapper #icon-contact a:hover img:nth-of-type( 2 ) {
    transform: scale( 1.1 ) translateX( -1% );
}

#main-header #icon-wrapper #icon-contact a:hover img:nth-of-type( 3 ) {
    transform: scale( 0.8 ) rotate( 45deg ) translateY( -25% ) translateX( -19% );
}

.pages #main-header #icon-wrapper #icon-contact {
    display: none;
}

.pages #main-header #icon-wrapper #icon-tel {
    right: 17px;
}

/*=============================================================
03. footer
=============================================================*/

#main-footer {
    padding: 90px 0;
    color: #999;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    text-align: center;
    letter-spacing: 1px;
}

/*=============================================================
04. main contents
=============================================================*/

#lp-01 #bg {
    background-image: url( /common/img/bg.jpg );
}

#lp-01 #part-01 .list-01,
#lp-01 #part-01-alt .list-01,
#lp-01 #part-02 .list-01 {
    font-size: 22px;
}

#lp-01 #part-01-alt .box-img {
    background-image: url( /common/img/img-01-alt.jpg );
}

#lp-01 #part-01 .box-img {
    background-image: url( /common/img/img-01.jpg );
    background-position: left top;
}

#lp-01 #part-02 .box-img {
    background-image: url( /common/img/img-02.jpg );
    background-position: left center;
}

#lp-01 #part-plan-outline .box-img {
    background-image: url( /common/img/img-03.jpg );
}

#lp-01 #part-plan-detail #note,
#lp-01 #part-plan-detail #payment {
    width: 97%;
}

#lp-01 #part-plan-detail #note {
    margin-left: auto;
    margin-right: auto;
}

#lp-01 #part-plan-detail #payment {
    margin: 0 auto 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 30px 20px 30px;
    background: #fff;
    box-shadow: 0 0 10px rgba( 0,0,0,0.1 );
    text-align: center;
}

#lp-01 #part-plan-detail #payment .list-01 li:last-of-type {
    border-bottom: none;
}

#lp-01 #part-plan-detail #payment span.mb-plus {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 18px;
}

#lp-01 #part-plan-detail #payment .btn-01 {
    max-width: 480px;
    font-size: 18px;
}

#lp-01 #part-contact .box-img {
    background-image: url( /common/img/img-06.jpg?v01 );
}

#lp-01 #part-contact table {
    display: block;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
}

#lp-01 #part-contact table:nth-of-type( 1 ) {
    padding-right: 1.5%;
}

#lp-01 #part-contact table:nth-of-type( 2 ) {
    padding-left: 1.5%;
}

.formTable {
    word-break: break-all;
}

#lp-01 .formTable tr,
#lp-01 .formTable th,
#lp-01 .formTable td {
    display: block;
    width: 100%;
    text-align: left;
}

select {
    -webkit-appearance:none;
    appearance:none;
    width: 100%;
    max-width: 560px;
    padding: 1em;
    box-sizing: border-box;
    font-size: 1em;
    border: #888 1px solid;
    border-radius: 100px;
    background: #fff;
    color: #333;
}

.formTable tbody {
    display: block;
    width: 100%;
    text-align: left;
}

.formTable .marker {
    color: #008463;
    font-size: 12px;
    vertical-align: top;
}

.formTable label {
    cursor: pointer;
}

.formTable tr {
    padding: 25px 0 32px;
    border-bottom: solid 1px #ddd;
}

.formTable tr:nth-of-type( 1 ) {
    padding-top: 0;
}

.formTable tr:last-of-type {
    border-bottom: none;
}

.formTable input[type="text"],
.formTable textarea {
    display: inline-block;
    width: 100%;
    padding: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #888;
    margin-top: 5px;
    font-size: inherit;
    font-weight: normal;
    font-family: inherit;
}

.formTable input[type="text"].mt-plus {
    margin-top: 10px;
}

.formTable input[type="text"].short {
    width: 10em;
}

.formTable input[type="text"].short.ml-plus {
    margin-left: 10px;
}

.formTable input[type="text"].short.mr-plus {
    margin-right: 10px;
}

.form-btn-wrapper {
    padding-top: 10px;
    text-align: center;
}

.form-btn-wrapper input {
    display: inline-block;
}

.form-btn-wrapper input {
    width: 40%;
    max-width: 420px;
    padding: 25px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: none;
    text-align: center;
    font-size: 18px;
    -webkit-border-radius: 1000px;
    border-radius: 1000px;
    transition: all ease 300ms;
}

.form-btn-wrapper input.form-btn-01 {
    border: solid 3px #008463;
    background: #008463;
    color: #fff;
}

.form-btn-wrapper input.form-btn-01:hover {
    border: solid 3px #005d5a;
    background: #005d5a;
}

.form-btn-wrapper input.form-btn-02 {
    border: solid 3px #aaa;
    color: #aaa;
}

.form-btn-wrapper input.form-btn-02:hover {
    border: solid 3px #333;
    color: #333;
}

.form-btn-wrapper input.form-btn-03 {
    border: solid 3px #fff;
    color: #fff;
}

.form-btn-wrapper input.form-btn-03:hover {
    background: #fff;
    color: #008463;
}

#formWrap .form-btn-wrapper.double-btns input {
    margin: 0 5px;
}

#part-company .row:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/img-07.jpg );
}

#part-company .row:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/img-08.jpg );
    background-position: right center;
}

#part-company dl dt {
    font-size: 24px;
    line-height: 1.5;
}

#part-company dl dd .b {
    font-weight: bold;
    font-size: 106%;
}

#part-company dl dd {
    padding-bottom: 15px;
    border-bottom: solid 1px rgba( 255,255,255,0.1 );
    margin-bottom: 15px;
}

#part-company dl dd:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
}

#part-company #map {
    width: 100%;
    height: 100%;
    box-shadow: 0 0 10px rgba( 0,0,0,0.1 );
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#part-company .map-box .inner {
    padding-top: 40%;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

/*=============================================================
05. mail
=============================================================*/

#mail #bg-wrapper {
    background: #008463;
}

#mail #bg {
    background-image: url( /common/img/bg.jpg );
    opacity: 0.2;
}

#mail #wrapper {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    color: #fff;
}

#mail #formWrap {
    width: 65%;
    max-width: 980px;
    margin: 0 auto;
    padding-top: 140px;
}

#mail #formWrap #error-box p {
    padding-bottom: 15px;
    border-bottom: solid 1px rgba( 255,255,255,0.4 );
    margin-bottom: 15px;
}

#mail #formWrap table {
    width: 100%;
    border-top: solid 1px rgba( 255,255,255,0.4 );
    border-left: solid 1px rgba( 255,255,255,0.4 );
    border-right: solid 1px rgba( 255,255,255,0.4 );
    margin-bottom: 30px;
}

#mail #formWrap tr {
    width: 100%;
    padding: 0;
    display: block;
    border-bottom: solid 1px rgba( 255,255,255,0.4 );
}

#mail #formWrap th,
#mail #formWrap td {
    padding: 18px;
}

#mail #formWrap th {
    width: 11em;
    border-right: solid 1px rgba( 255,255,255,0.4 );
    background: rgba( 255,255,255,0.8 );
    color: #008463;
}

#mail #formWrap td a {
    color: #fff;
    text-decoration: none;
}

#mail #formWrap tr:last-of-type td {
    min-height: 60px;
}

#mail #main-footer {
    color: #fff;
}

/*=============================================================
06. thanks
=============================================================*/

#thanks,
#thanks #wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

#thanks #bg {
    background-image: url( /common/img/bg-thanks.jpg );
}

#thanks main .central {
    width: 40%;
    background: rgba( 255,255,255,0.6 );
    border: solid 2px rgba( 255,255,255,0.5 );
    padding: 40px 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba( 0,0,0,0.06 );
}

#thanks main .central .tit-01 {
    line-height: 1.4;
}

#thanks #main-footer {
    width: 100%;
    padding: 0;
    position: absolute;
    top: auto;
    left: 0;
    bottom: 30px;
    z-index: 1;
    font-size: 16px;
    color: #fff;
}

/*=============================================================
07. media query
=============================================================*/

@media screen and (orientation: landscape) {

    #lp-01 #visual-img {
        display: block;
    }

    #lp-01 #visual-img-p {
        display: none;
    }

}

@media screen and (orientation: portrait) {

    #visual #intro-01 .central {
        top: 53%;
    }

    #lp-01 #visual-img {
        display: none;
    }

    #lp-01 #visual-img-p {
        display: block;
    }

    #lp-01 #bg {
        background-image: url( /common/img/bg-p.jpg );
    }

}

@media screen and (min-width: 1500px) {

    .box-img.wide {
        padding-top: 39%;
    }
    
}

@media screen and (max-width: 1480px) {

    .tit-01 {
        font-size: 28px;
    }

    #lp-01 #part-01 .list-01,
    #lp-01 #part-01-alt .list-01,
    #lp-01 #part-02 .list-01 {
        font-size: 18px;
    }

}

@media screen and (max-width: 1280px) {

    .row.divi-alt {
        padding: 4% 0;
    }

    .row.divi-alt .box-text {
        width: 46%;
    }

    .row.divi-alt.img-left .box-text {
        margin-left: 54%;
    }

}

@media screen and (max-width: 1279px) {

    body,
    #lp-01 #part-plan-detail #payment span.mb-plus,
    #lp-01 #part-plan-detail #payment .btn-01 {
        font-size: 16px;
    }

    .tit-01 {
        font-size: 26px;
    }

    p.big {
        font-size: 22px;
    }

    .list-order-number li {
        padding: 6px 0 18px;
    }

    .list-order-number li .righter {
        width: calc( 100% - 50px );
        padding-left: 50px;
    }

    #lp-01 #part-01 .list-01,
    #lp-01 #part-01-alt .list-01,
    #lp-01 #part-02 .list-01 {
        font-size: 16px;
    }

    #lp-01 #part-plan-detail ul.list-detail li h1 {
        font-size: 26px;
    }

    #mail #formWrap {
        width: 86%;
        max-width: initial;
    }

    #thanks main .central {
        width: 50%;
    }

}

@media screen and (max-width: 1000px) {

    #part-rule .lefter,
    #part-rule .righter {
        width: 100%;
    }

    #part-rule .lefter {
        padding-right: 0;
        padding-bottom: 16px;
        border-bottom: solid 1px #ddd;
        margin-bottom: 12px;
    }

    #part-rule .righter {
        padding-left: 0;
    }

}

@media screen and (max-width: 800px) {

	.pc {
		display: none;
    }

	.sp {
		display: inline-block;
    }

    .mass {
        margin-bottom: 50px;
    }

    .mini-mass {
        padding-bottom: 25px;
        margin-bottom: 17px;
    }

    .inner {
        width: 90%;
    }

    .inner.ptb-plus {
        padding: 40px 0;
    }

    .inner.ptb-plus-more {
        padding: 40px 0;
    }

    .inner.ptb-plus.mobile-pb-minus {
        padding-bottom: 35px;
    }

    .tit-01 {
        font-size: 24px;
    }

    .tit-01.tab-sp-mb-plus {
        margin-bottom: 17px;
    }

    .base {
        padding: 27px 40px 25px 40px;
    }

    .list-01 li {
        padding: 16px 0 18px;
    }

    .list-01 .list-cards li {
        padding: 0;
    }

    .list-01 li:last-of-type,
    .list-01.line-black li:last-of-type {
        padding-bottom: 0;
        border-bottom: none;
        margin: 0;
    }

    .box-img.wide {
        padding-top: 65%;
    }

    .box-price {
        margin-bottom: 35px;
    }

    .row-flex {
        display: block;
    }

    .row-flex > div {
        width: 100%;
        margin: 0;
    }

    .row.bt {
        padding-top: 55px;
    }

    .row.divi {
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }

    .row.divi .box-img,
    .row.divi .box-text {
        width: 100%;
    }

    .row.divi .box-img {
        padding-top: 65%;
        position: relative;
    }

    .row.divi.img-left .box-text {
        padding: 0;
        margin: 0;
    }

    .row.divi.img-right .box-text {
        padding-left: 0;
    }

    .row .row.divi-alt {
        padding-top: 0;
    }

    .row.divi-alt {
        width: 90%;
        margin: 0 auto;
    }

    .row.divi-alt .box-img,
    .row.divi-alt .box-text {
        width: 100%;
    }

    .row.divi-alt .box-img {
        margin-bottom: 27px;
    }

    .row.divi-alt.img-right .box-text {
        padding-left: 0;
    }

    .row.divi-alt.img-left .box-text {
        padding-right: 0;
        margin-left: 0;
    }

    .row.divi-alt .box-img {
        padding-top: 65%;
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
    }

    .row.half-fit .box-img,
    .row.half-fit .box-text {
        width: 100%;
    }

    .row.half-fit .box-img {
        padding-top: 65%;
        position: relative;
    }

    .row.half-fit .box-text {
        padding: 40px 5%;
        margin-left: 0;
    }

    .form-btn-wrapper {
        padding-top: 0;
    }

    #visual {
        /* margin-bottom: 50px; */
    }

    #visual #intro-01 .central {
        width: 80%;
    }

    #visual #main-title-alt h1,
    #visual #main-title .central {
        width: 80%;
    }

    #visual #icon-scroll-wrapper #icon-scroll {
        width: 13px;
    }

    #lp-01 #part-00 .ta-c {
        text-align: left;
    }

    #lp-01 #part-03 .inner.ptb-plus {
        padding: 37px 0;
    }

    #lp-01 #part-plan-outline .row.half-fit .box-text {
        padding-top: 27px;
        padding-bottom: 30px;
    }

    #lp-01 #part-plan-detail #note,
    #lp-01 #part-plan-detail #payment {
        width: 100%;
    }

    #lp-01 #part-plan-detail #note div.ta-c {
        text-align: left;
    }

    #lp-01 #part-plan-detail #payment {
        padding-bottom: 35px;
        margin-bottom: 15px;
    }

    #lp-01 #part-plan-detail ul.list-detail {
        margin-bottom: 15px;
    }

    #lp-01 #part-plan-detail ul.list-detail li h1 {
        font-size: 24px;
    }

    #lp-01 #part-contact .white-no-alpha {
        padding-bottom: 5px;
    }

    #lp-01 #part-contact table:nth-of-type( 1 ) {
        padding-right: 2.5%;
    }

    #lp-01 #part-contact table:nth-of-type( 2 ) {
        padding-left: 2.5%;
    }

    #part-company .map-box .inner {
        padding-top: 65%;
    }
    
    #part-company dl dt {
        font-size: 20px;
    }

    #main-footer {
        padding: 70px 0;
    }

    #mail #error-inner {
        margin-bottom: 25px;
    }

    #mail #main-footer {
        padding: 50px 0;
    }

    #thanks main .central {
        width: 60%;
    }

}

@media screen and (max-width: 767px) {

	.pc-alt {
		display: none;
    }

	.sp-alt {
		display: inline-block;
    }
    
    .super-big,
    .big {
        font-size: 120%;
    }

    .box-price {
        margin-bottom: 20px;
    }

    .list-02 li {
        width: 100%;
        text-align: left;
        padding-left: 1em;
    }

    p.sp-mb-little-plus {
        margin-bottom: 10px;
    }

    #visual {
        /* margin-bottom: 40px; */
    }

    #visual #icon-scroll-wrapper #icon-scroll {
        width: 11px;
    }

    #visual #main-title-alt h1 {
        width: 95%;
        top: 51%;
    }

    #visual #intro-01 .central {
        width: 95%;
        top: 55%;
    }

    #visual #main-title .central {
        width: 92%;
    }

    #main-header > h1 {
        width: 180px;
        top: 10px;
        left: 10px;
    }
    
    #main-header #icon-wrapper #icon-contact,
    #main-header #icon-wrapper #icon-contact a {
        width: 120px;
        height: 109px;
    }

    #main-header #icon-wrapper #icon-tel {
        top: 10px;
        right: 82px;
    }

    #main-header #icon-wrapper #icon-tel a {
        width: 95px;
        height: 95px;
        padding: 5px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        line-height: 1;
    }

    #main-footer {
        padding: 60px 0;
        font-size: 12px;
    }

    .mass {
        margin-bottom: 40px;
    }

    .inner,
    .row.divi,
    .row.divi-alt {
        width: 86%;
    }

    .row.divi-alt.img-right {
        margin-bottom: 15px;
    }

    .row.half-fit .box-text {
        padding: 40px 7%;
    }

    #lp-01 #part-03 .inner.ptb-plus,
    .inner.ptb-plus {
        padding: 30px 0 30px;
    }

    .base {
        padding: 22px 27px 27px 27px;
    }
    
    .tit-01.tab-sp-mb-plus {
        margin-bottom: 15px;
    }

    .tit-01.sp-mb-minus {
        margin-bottom: 11px;
    }

    .tit-01.sp-mb-minus-more {
        margin-bottom: 8px;
    }

    .tit-02 {
        font-size: 20px;
        margin-bottom: 10px;
    }

    p.mb-plus-alt {
        margin-bottom: 19px;
    }

    #part-rule .lefter,
    #part-rule .row section {
        margin-bottom: 14px;
    }

    #part-rule .row section h1 {
        margin-bottom: 2px;
        font-size: 17px;
        line-height: 1.7;
    }

    .box-img.wide,
    .row.divi .box-img,
    .row.half-fit .box-img,
    #lp-01 #part-plan-detail .box-img {
        padding-top: 100%;
    }

    #lp-01 #part-01 .box-img {
        padding-top: 95%;
    }

    #lp-01 #part-plan-detail .inner.ptb-plus {
        padding-top: 28px;
        padding-bottom: 30px;
    }

    #lp-01 #part-plan-detail .inner.ptb-plus.mobile-pb-minus {
        padding-bottom: 22px;
    }

    #lp-01 #part-plan-detail ul.list-detail {
        margin-bottom: 1px;
    }

    #lp-01 #part-plan-detail ul.list-detail li {
        width: 100%;
        margin-bottom: 15px;
        float: none;
    }

    #lp-01 #part-plan-detail ul.list-detail li:last-of-type {
        margin-bottom: 5px;
    }

    #lp-01 #part-plan-detail ul.list-detail li h1 {
        top: -36px;
        font-size: 22px;
    }

    #lp-01 #part-plan-detail ul.list-detail li .double-line-inner {
        padding: 16px 22px;
    }

    #lp-01 #part-plan-detail #option {
        margin-bottom: 28px;
    }

    #lp-01 #part-plan-detail #payment {
        padding-bottom: 30px;
        padding-top: 25px;
    }

    #lp-01 #part-plan-detail #payment span.mb-plus,
    #lp-01 #part-plan-detail #payment .btn-01 {
        font-size: 16px;
    }

    #lp-01 #part-contact table:nth-of-type( 1 ),
    #lp-01 #part-contact table:nth-of-type( 2 ) {
        width: 100%;
        padding: 0;
        float: none;
    }

    #lp-01 #part-contact table:nth-of-type( 1 ) {
        border-bottom: solid 1px #ddd;
        margin-bottom: 25px;
    }

    #lp-01 #part-contact p.mb-plus {
        margin-bottom: 17px;
    }

    .formTable tr {
        padding: 20px 0 27px;
    }

    .formTable textarea {
        margin-top: 8px;
    }

    .form-btn-wrapper input {
        width: 100%;
        max-width: initial;
    }

    .form-btn-wrapper input.sp-mb-plus {
        margin-bottom: 15px;
    }

    #part-company .map-box .inner {
        padding-top: 125%;
    }
    
    #mail #formWrap {
        padding-top: 110px;
    }

    #mail #error-box {
        text-align: left;
        font-size: 14px;
    }

    #mail #formWrap th,
    #mail #formWrap td {
        display: block;
        width: 100%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    #mail .sp-ta-l {
        text-align: left;
    }

    #formWrap .form-btn-wrapper.double-btns input {
        margin: 0;
    }

    #lp-01 #formWrap .form-btn-wrapper input.sp-mb-plus,
    #mail #formWrap .form-btn-wrapper input.sp-mb-plus {
        margin-bottom: 15px;
    }

    .pages #main-header #icon-wrapper #icon-tel {
        right: 10px;
    }

    #thanks main .central {
        width: 86%;
    }

    #thanks main .central {
        padding: 20px 20px 25px;
    }

    #thanks main .central h1.tit-01 {
        margin-bottom: 7px;
    }

    #thanks main .central p {
        margin-bottom: 11px;
        font-size: 14px;
    }

    #thanks .btn-01 {
        padding: 13px 0;
        font-size: 16px;
    }

    #thanks #main-footer {
        font-size: 12px;
    }

}

@media screen and (max-width: 600px) {

    .list-order-number li {
        padding: 6px 0 10px;
    }

    .list-01 .list-cards li {
        width: 20%;
        padding: 0;
    }

    select {
        display: block;
        width: 100%;
    }

}

@media screen and (max-width: 374px) {

    body,
    #lp-01 #part-01 .list-01,
    #lp-01 #part-01-alt .list-01,
    #lp-01 #part-02 .list-01,
    #lp-01 #part-plan-detail #payment span.mb-plus,
    #lp-01 #part-plan-detail #payment .btn-01 {
        font-size: 14px;
    }

    .tit-01,
    #lp-01 #part-plan-detail ul.list-detail li h1 {
        font-size: 18px;
    }

    p.big {
        font-size: 18px;
    }

    #main-header > h1 {
        width: 132px;
        top: 5px;
        left: 5px;
    }

    #main-header #icon-wrapper #icon-contact,
    #main-header #icon-wrapper #icon-contact a {
        width: 100px;
        height: 91px;
    }

    #main-header #icon-wrapper #icon-tel {
        top: 5px;
        right: 72px;
    }

    #main-header #icon-wrapper #icon-tel a {
        width: 80px;
        height: 80px;
        padding: 3px;
    }

    #main-footer {
        letter-spacing: 0;
    }

    #visual #icon-scroll-wrapper #icon-scroll {
        width: 8px;
    }

    #thanks main .central p {
        font-size: 12px;
    }

    #thanks #main-footer {
        bottom: 20px;
    }

    .pages #main-header #icon-wrapper #icon-tel {
        right: 5px;
    }

}

/*=============================================================
08. mobile
=============================================================*/

.mobile .btn-01,
.mobile .form-btn-wrapper input.form-btn-01,
.mobile .form-btn-wrapper input.form-btn-02,
.mobile .form-btn-wrapper input.form-btn-03,
.mobile #main-header #icon-wrapper #icon-tel a {
    transition: none;
}

.mobile .btn-01:hover {
    border: solid 2px #222;
    background: none;
    color: #222;
}

.mobile .btn-01.white:hover {
    border: solid 2px #fff;
    background: none;
    color: #fff;
}

.mobile .form-btn-wrapper input.form-btn-01:hover {
    border: solid 3px #008463;
    background: #008463;
}

.mobile .form-btn-wrapper input.form-btn-02:hover {
    border: solid 3px #aaa;
    color: #aaa;
}

.mobile .form-btn-wrapper input.form-btn-03:hover {
    background: none;
    color: #fff;
}

.mobile #main-header #icon-wrapper #icon-tel a:hover {
    background: #008463;
}

/*=============================================================
09. helper
=============================================================*/

.ta-c {
    text-align: center;
}

.clr {
	clear: both;
}

/*
* clear fix
*/

.cf:before,
.cf:after {
	content:"";
	display: block;
	height: 0;
	overflow: hidden;
}

.cf:after {
	clear: both;
}
