    /*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

    html {
        color: #333333;
        font-size: 16px;
        line-height: 1.75;
    }

    ::-moz-selection {
        background: #b3d4fc;
        text-shadow: none;
    }

    ::selection {
        background: #b3d4fc;
        text-shadow: none;
    }

    hr {
        display: block;
        height: 1px;
        border: 0;
        border-top: 1px solid #ccc;
        margin: 10px 0 30px;
        padding: 0;
    }

    audio,
    canvas,
    iframe,
    img,
    svg,
    video {
        vertical-align: middle;
    }

    fieldset {
        border: 0;
        margin: 0;
        padding: 0;
    }

    textarea {
        resize: vertical;
    }

    .browserupgrade {
        margin: 0.2em 0;
        background: #ccc;
        color: #000;
        padding: 0.2em 0;
    }


    /* ==========================================================================
    Author's custom styles
    ========================================================================== */


    /* Base --------------------------------------------------------------------- */


    body {
        font-family: 游ゴシック体, "Yu Gothic", YuGothic, Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
        background: #f6f6f6;
    }

    h1, h2 {
        padding: 0;
        margin: 0;
    }

    ul, li {
        padding: 0;
        margin: 0;
        list-style: none;
    }

    p {
        margin: 50px 100px;
		font-weight: 600;
    }

    a {
        color: #09F;
		text-decoration: none;
    }

    a:hover {
        text-decoration: none;
    }
	
	::after, ::before {
		box-sizing: inherit;
		background-repeat: no-repeat;
		text-decoration: inherit;
		vertical-align: inherit;
	}


    header {
		margin-top:100px!important;
        padding-top: 4%;
		padding-bottom: 7%;
		background-image: url("../img/top02.jpg");
		background-size: cover;
		background-position: center center;
		position: relative;
		background-repeat: no-repeat;
		top: 0;
    }	
	
	header img {	
		width: 48%;
		margin-left: 6%;
	}
	
	button {
		border: none;
		outline: none;
		background: transparent;
	}

    .wrap {
        max-width: 900px;
		width: 60%;
        margin: 0 auto;
    }
	
	.inner {
		max-width: 1000px;
		width: 70%;
		margin: 0 auto;
	}

    footer {
        margin: 0;
        clear: both;
        background: #2e2e2e;
        padding: 50px 0 45px;
        color: #FFFFFF;
        font-size: 60%;
        line-height: 2.0em;
    }

    footer a {
        color: #FFFFFF;
    }

	address {
        font-style: normal;
        color: #bdbdbd;
        text-align: center;
        font-size: 1.2em;
        letter-spacing: 0.1em;
    }
	
	
	/* new */
	
	/* default ------------------------------------- */
	
	.section_inner {
		max-width: 1000px;
		margin: 0 auto;
	}
	
	.section-title {
		display: flex;
		align-items: baseline;
		justify-content: center;
		position: relative;
	}
	
	.section-title::before {
		content: "";
		position: absolute;
		top: 0;
		width: 100%;
		bottom: 0;
		margin: auto;
		display: block;
		height: 2px;
	}
	
	.section-title h4 {
		font-weight: bold;
		font-size: 30px;
		line-height: 1.65;
		letter-spacing: 0.03em;
		margin: 0;
		position: relative;
		z-index: 1;
		padding: 0 16px;
	}

	.title h2 {
		font-family: 'Oswald', sans-serif;
		font-weight: 500;
		font-size: 4em;
	}
	
	.title h3 {
		color: #AFB0B5;
		font-size: 14px;
		text-align: center;
		letter-spacing: 0.1em;
		line-height: 1;
	}
	
	.smooth {
		clip-path: inset(0 100% 0 0);
		display: inline-block;
		font-size: 36px;
		font-weight: bold;
		transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
		transition-property: clip-path;
		line-height: 1;
		height: 40px;
		margin-top: 15px;
	}
	.smooth.is-animated {
		clip-path: inset(0);
	}
	
	/* footer */
	
	footer {
        margin: 0;
        clear: both;
        background: #353535;
        padding: 50px;
        color: #FFFFFF;
        font-size: 60%;
        line-height: 2.0em;
    }
    footer h3 {
        margin: 3% 0 1%;
        padding: 0 0 0 9px;
        text-align: left;
        font-size: 1.5em;
        font-weight: normal;
        letter-spacing: 0.05em;
        border-left: solid 4px #fff;
        line-height: 18px;
    }
    footer a {
        color: #FFFFFF;
        font-size: 1.2em;
        letter-spacing: 0.08em;
        -webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
    }
    footer a:hover {
        color: #D5D5D5;
    }
    footer .sctl{
        position: relative;
        margin: 0 1.5rem 0 0;
    }
    footer .sctl::after{
        margin: 0 1rem;
        content: "";
        width: 1px;
        height: 15px;
        background-color: #7b7b7b;
        position: absolute;
        left: 100%;
    }
    footer .info{
        border-bottom: solid 1px #7b7b7b;
        padding: 0 0 4% 5%;
        margin: 1% 0 2%;
    }
	
	footer p {
		margin: 0;
		font-size: 1.2em;
	}
	
	/* menu ---------------------------------------- */	

	.header_menu {
		display: block;
		background-color: #fff;
		padding: 0;
		height: 64px;
		position: fixed;
		display: block;
		width: 100%;
		z-index: 100000;
		top: 0;
	}
	
	.menu_fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 10;
		background: #fff;
		box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
	}
	
	.header_menu .logo {
		width: 200px;
	}
	
	.menu_pc {
		margin: 0 auto;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		height: 60px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	
	.navbar {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 100%;
		width: 100%;
	}

	.container{
		padding-top: 4rem;
	}

	.nav {
		display: flex;
		height: 2rem;
		margin: 0 auto;
		width: 1000px;
	}
	.nav > li {/*親階層のみ幅を25%にする*/
		width: 25%;
	}
	
	/*全てのリスト・リンク共通*/
	.nav li {
		list-style: none;
		position: relative;
	}
	
	.nav li a {
		background: #fff;
/*		border-right: 1px solid #eee;*/
		color: #333;
		display: block;
		height: 2rem;
		line-height: 2rem;
		text-align: center;
		text-decoration: none;
		width: 100%;
	}
	
	/*子階層以降共通*/
	.nav li li {
		height: 0;
		opacity: 0;
		overflow: hidden;
		transition: opacity .5s;
	}
	.nav li li a {
		border-top: 1px solid #eee;
	}
	
	.nav li:hover > ul > li {
		height: 2rem;
		opacity: 1;
		overflow: visible;
	}
	
	.nav li ul li ul {
		left: 100%;
		position: absolute;
		top: 0;
		width: 100%;
	}
	/*一番右のメニュー*/
	.nav > li:nth-child(5) ul li ul {
		left: -100%;
	}
	/*hover*/  
	.nav > li:hover > a {/*親階層*/
		color: #333;
	}

	.nav > li li > a {/*子階層*/
		background: #333;
		font-size: 0.75em;
		color: #fff;
	}
	.nav > li li:hover > a {
		background: #535353;
		font-size: 0.75em;
		
	}

	.nav li ul li ul li > a {/*孫階層*/
		background: #004789;
	}
	.nav li ul li ul li:hover > a {
		background: #0065c1;
	}

	.nav li ul li ul li ul li > a {/*ひ孫階層*/
		background: #0065c1;
	}
	.nav li ul li ul li ul li:hover > a {
		background: #1e7dd4;
	}

	/*リストに「▶︎」を付ける*/
	.nav > li > ul:before{/*子階層*/
		border: 5px solid transparent;
		border-top: 5px solid #fff;
		content: "";
		right: 1rem;
		position: absolute;
		top: 1rem;
		transform: translateY(-40%);
	}
	.nav li ul li ul:before {/*孫階層*/
		border: 5px solid transparent;
		border-left: 5px solid #fff;
		content: "";
		left: -20px;
		position: absolute;
		top: 1em;
		transform: translateY(-50%);
	}

	.nav li:nth-child(5) ul li ul:before {/*一番右のメニューの孫階層*/
		border: 5px solid transparent;
		border-right: 5px solid #fff;
		left: auto;
		right: -20px;
	}
	
	/* gnav */
	
	.gnav {
		background-color: #2fb0bd;
		padding: 4% 0 3.5%;
		color: #fff;
	}
	
	.gnav_inner {
        width: 90%;
		max-width: 1000px;
        margin: 0 auto;
        padding: 0;
	}
	
	.gnav ul {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.gnav li {
		-ms-flex: 0 0 30%;
		flex: 0 0 30%;
        border: solid 1px #fff;
        font-size: 90%;
        line-height: 1.6em;
        font-weight: normal;
        -webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
	}
	.gnav li:hover {
        background-color: rgba(255,255,255,.3);
	}
	.gnav li span {
        font-size: 2.3em;
        font-weight: 500;
        letter-spacing: 0.05em;
        font-family: 'Roboto Condensed', sans-serif;
	}
	.gnav li a {
        display: block;
		color: #fff!important;
        padding: 6% 0 5%;
	}
	
	.wak {
		background-color: #19a0ac;
        height:40px;
		width: 100%;
		text-align: center;
		color: #fff;
		font-size: 1.2em;
		letter-spacing: 0.2em;
		font-weight: 500;
        line-height: 2.1;
	}

	/* buy ----------------------------------------- */
	
	.buy {
		padding: 70px 0 0;
		background-color: #fff;
	}
	
	.title {
		text-align: center;
		line-height: 1;
	}
	
	.price {
		background-color: #f6f6f6;
		padding-bottom: 30px
	}
	
	/* second ---------------------------------------- */
	
	.second .section-title h4 {
		background-color: #fff;
		color: #2fb0bd;
		font-size: 35px;
	}
	
	.second .section-title::before {
		background-color: #2fb0bd;
	}
	
	.second .section-title {
		margin: 50px 0;
	}
	
	.second .wrap {
		width: 90%;
	}
	
	/* features ------------------------------------- */
	
	.features {
		background-color: #eff5f6;
		padding: 70px 0;
	}
	
	.features .section-title h4 {
		background-color: #eff5f6;
		color: #2fb0bd;
		font-size: 35px;
	}
	
	.features .section-title h4 span {
		font-size: 50px;
	}
	
	.features .section-title::before {
		background-color: #2fb0bd;
	}
	
	.features .section-title {
		margin: 50px 0;
	}
	
	.features .wrap {
		width: 90%;
	}
	
	.features .item {
		background-color: #fff;
		padding-bottom: 1px;
	}
	
	.features p {
		margin: 50px 80px;
	}
	
	/* ormv --------------------------------------- */
	
	.ormv {
		background-color: #fff;
		padding: 70px 0 0;
	}
	
	.ormv h4 {
		font-size: 40px;
		text-align: center;
		line-height: 1.6em;
		letter-spacing: 2px;
	}
	
	.skmcn {
		background: url("../img/ormv/skmcn_bg.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		padding: 80px 0 20px;
		
		color: #fff;
		font-size: 1.2em;
		text-align: center;
	}
	
	.skmcn img {
		width: 80%;
		margin: 0 auto;
	}

	/* comparison ---------------------------------- */
	
	.comparison {
		background-color: #fff;
		padding: 70px 0;
	}

	.comparison .wrap {
		width: 90%;
	}
	
	/* simulation ---------------------------------- */
	
	.simulation {
		background-color: #fff;
		margin: 40px;
		padding: 30px 0;
	}
	
	.simulation01 .sub_title {
		background-color: #3a81b1;
		padding: 10px 15px 5px;
		color: #fff;
		font-size: 29px;
		font-weight: bold;
		display: inline-block;
		letter-spacing: 0.1em;
	}
	
	.simulation01 p {
		margin: 50px 0;
	}
	
	.simulation01 .text01 {
		text-align: center;
	}
	
	/* step */
	
	.border-box {
		margin-top: 72px;
		margin-bottom: 64px;
		padding: 64px 32px 32px 32px;
		
		border: 2px solid #2D81B1;
		border-radius: 8px;
		padding: 48px 32px 32px 32px;
		position: relative;
	}
	
	.border-box .title {
		font-weight: bold;
		font-size: 20px;
		line-height: 1.85;
		letter-spacing: 0.04em;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		color: #2D81B1;
		background-color: #fff;
		position: absolute;
		left: 0;
		right: 0px;
		margin: auto;
		text-align: center;
		width: 360px;
		display: block;
		top: -17px;
	}
	
	.border-box .step-list {
		font-size: 18px;
		font-weight: bold;
		display: table;
		margin: 0 auto;
			margin-bottom: 0px;
		margin-bottom: 24px;
	}
	
	.border-box .step-list li {
		margin-bottom: 10px;
	}
	
	.border-box .step-list .step {
		background-color: #E3EDF2;
		color: #2D81B1;
		font-family: europa, sans-serif;
		font-size: 16px;
		border-radius: 15px;
		height: 30px;
		width: 75px;
		text-align: center;
		line-height: 30px;
		display: inline-block;
		margin-right: 20px;
		padding: 0 10px 0 10px;
	}
	
	.border-box p {
		text-align: center;
		margin: 0;
	}
	
	.simulation .wrap {
		width: 90%;
	}
	
	.sim_img01 {
		padding: 50px;
		border: 2px solid #2D81B1;
		border-radius: 15px;
	}
	
	.simulation02 {
		padding: 30px 0 20px;
	}
	
	.simulation02 .wrap {	
		width: 60%;
		margin: 0 auto;
	}
	
	.sim_img05 {
		padding: 50px;
		background-color: #fff;
	}
	
	.simulation02 .sub_title {
		text-align: center;
		font-size: 28px;
		font-weight: 600;
		margin-bottom: 50px;
	}
	
	.simulation02 p {
		margin: 50px 0;
		text-align: center;
	}
	
	.sim_img07 {
		margin: 50px;
	}
	
	.simulation03 {
		background: url("../img/simulation/bg.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		padding: 80px 0 20px;
		
		color: #fff;
		font-size: 15px;
	}
	
	.simulation03 .sub_title {
		background-color: #fff;
		padding: 10px 10px 5px;
		color: #19a0ac;
		width: 40%;
		margin: 0 auto;
		text-align: center;
		font-size: 28px;
		font-weight: 600;
	}
	
	/* sponsors ----------------------------------- */
	
	.sponsors {
		background: #fff;
		padding: 90px 0;   
	}
	
    .s_img{
        position: relative;
    }
	
    .name,
    .name2{
        position: absolute;
        right: 5%;
        top: 85%;
        width: 300px;
        padding: 1.5% 3%;
        font-size: 0.9em;
        height: 50px;
        vertical-align: middle;
        background: #fff;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);
        -moz-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);
        -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);

    }
	
    .name span{
        letter-spacing: 0.2em;
        font-weight: normal;
    }
	
    .name2 span{
        letter-spacing: 0.2em;
        font-weight: normal;
        line-height: 53px;
    }

	
	.sponsors .section-title h4 {
		background-color: #fff;
		color: #2fb0bd;
		font-size: 35px;
	}
	
	.sponsors .section-title h4 span {
		font-size: 50px;
	}
	
	.sponsors .section-title::before {
		background-color: #2fb0bd;
	}
	
	.sponsors .section-title {
		margin: 50px 0;
	}
	
	.sponsors .text {
		margin: 70px 0;
	}
	
	.sponsors .text p {
		margin: 30px 0;
	}
	
	.sponsors .text span {
		font-size: 1.7em;
		font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", serif;
	}

	/* information --------------------------------------- */
    
    .info_text {
        padding: 70px 100px;
        margin: 0px 100px 0;
        background: #f6f6f6;
	}

	/* plan --------------------------------------- */
	
	.plan {
		background-color: #eff5f6;
		padding: 70px 0;
	}
	
	.plan_box {
		background-color: #fff;
		padding-bottom: 30px;
	}
	
	.plan_box h4 {
		background-color: #19a0ac;
		padding: 14px 0 5px;
		color: #fff;
		text-align: center;
		font-size: 1.6em;
	}
	
	/* voice -------------------------------------- */
	
	.voice {
		background: #eff5f6;
		padding: 70px 0;
	}
	
	.voice .wrap{
        max-width: 1000px;
        width: 90%;
        margin: 0 auto;
    }
	
	.voice .flex {
		flex-wrap: wrap;
		display: flex;
		justify-content: space-between;
        margin: 5% 0;
	}
	
	.voice .mv {
        width: 32%;
        margin: 0;
        padding: 0;
        background: #fff;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);
        -moz-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);
        -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12),0 3px 10px rgba(0,0,0,.1);
        border-radius: 10px;
        overflow: hidden;
	}
	
	.voice .text1,
    .voice .text2,
    .voice .text3{
        text-align: left;
        margin: 8% 10%;
        font-size: 0.9em;
	}
	
	.voice button {
		border: none;
		outline: none;
		background: transparent;
        padding: 0;
	}	
	
    .voice .text1 span{
        background: #e19f9a;
        border-radius: 20px;
        padding: 2% 5%;
        color: #fff;
    }
	
    .voice .text2 span{
        background: #5d7b7a;
        border-radius: 20px;
        padding: 2% 5%;
        color: #fff;
    }
	
    .voice .text3 span{
        background: #17a0b0;
        border-radius: 20px;
        padding: 2% 5%;
        color: #fff;
    }
	
	.voice .sub_title {
		font-size: 40px;
		text-align: center;
		line-height: 1.6em;
		letter-spacing: 2px;
		font-weight: bold;
		margin-top: 50px;
	}

	/* message ------------------------------------- */
	
	.message .section01 {
		padding: 70px 0 20px;
		background:#17a0b0;
		color: #fff;
	}
	
	.message .section01 .title {
		font-family: 'Oswald', sans-serif;
		font-weight: 500;
		font-size: 1em;
		text-align: left;
	}
	
	.message .section01 p {
		margin: 50px 0;
	}
	
	.message .section02	{
		background-color: #fff;
		padding: 70px 0;
	}
	
	.me_flex {
		flex-wrap: wrap;
		display: flex;
		justify-content: space-between;
	}
	
	.me_item {
		width: 48%;
	}
	
	.me_item p {
		margin: 30px 0;
	}
	
	.me_item span {
		font-size: 1.7em;
		font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", serif;
		font-weight: normal;
		letter-spacing: 1px;
	}
	
	.message .section03 {
		background-color: #fff;
		padding: 0 0 20px;
	}
	
	.message .section03 p {
		margin: 50px 0;
	}



	/* change -------------------------------------- */
	
	.change {
		background: #f6f6f6;
		padding: 0 0 90px;
	}
	
	.change .me_title {
		background: url("../img/simulation/bg.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		padding: 70px 0;
	}
	
	.change .me_title img {
		width: 50%;
		margin: 0 25%;
	}

	.change .flex {
		flex-wrap: wrap;
		display: flex;
		justify-content: space-between;
        margin: 8% 0;
	}
	
	.change .flex_item {
        width: 48%;
        margin: 0;
        padding: 0;
		font-weight: bold;
	}
	
	.change h4 {
        padding: 2% 4% 1%;
        font-size: 1.55em;
        font-weight: normal;
        letter-spacing: 0.06em;
        background: #18a0ac;
        color: #fff;
        line-height: 1.5em;
		margin: 0 0 30px;
		font-weight: bold;
	}
	
	.change .title {
		margin-top: 70px;
	}
	
	/* qa ------------------------------------------ */
	
	.faq {
		background-color: #fff;
		padding: 70px 0;
		color: #2e2e2e;
	}
	
	.faq .icon {
		width: 7%;
		padding: 0 9px 6px 0;
	}

	.hidden_box {
		margin: 2em auto;
		width: 100%;
        font-size: 15px;
        letter-spacing: 0.04em;
        font-weight: bold;
        font-family: 游ゴシック体, "Yu Gothic", YuGothic, Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
	}

	.hidden_box label {
		display: block;
		font-weight: bold;
		line-height: 1.75;
		border-radius:2px;
		cursor :pointer;
		transition: .5s;
		position: relative;
		padding: 0.5em 3em 0.5em 4em;
		text-align: justify;
        background: #ececec;
        padding: 24px 30px 24px 60px;
	}

	.hidden_box label:before {
		display: block;
        position: absolute;
        top: 50%;
        left: 30px;
        transform: translateY(-50%);
        content: "Q.";
        color: #19a0ac;;
        font-family: europa, sans-serif;
        margin-right: 10px;
        font-size: 15px;
	}

	.hidden_box label:after {
		display: block;
		content: '＋';
		font-weight: 900;
		transition: 0.2s;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		width: 3em;
		height: 3em;
		line-height: 3;
		text-align: center;
	}

	.hidden_box label:hover {
		background: #dfdfdf;
	}

	.hidden_box input:checked ~ label:after {
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%) rotate(315deg);
	}

	.hidden_box input {
		display: none;
	}

	/*中身を非表示にしておく*/
		.hidden_box .hidden_show {
		height: 0;
		padding: 0;
		overflow: hidden;
		opacity: 0;
		transition: 0.8s;
	}

	.hidden_show p {
		position: relative;
		padding: 0 3em 0 4em;
		text-align: justify;
		margin: 0;
		color: #151515;
        line-height: 1.85;
        letter-spacing: 0.04em;
        font-size: 15px;
	}

	/* クリックで中身表示 */
	.hidden_box input:checked ~ .hidden_show {
		padding: 2em 0;
		height: auto;
		opacity: 1;
		/*background-color: #ececec;*/
        border: 1px solid #ececec;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	.obi {
		background: linear-gradient(to right, #55cad9 0%, #0995a1 100%);
		color: #fff;
		padding: 20px 0 15px;
		text-align: center;
		font-size: 1.5em;
	}
	
	/* menu --------------------------------------------------------------------- */
	
	.menu {
		box-shadow: 2px 1px 8px rgba(0,0,0,0.2);
		display: block;
		position: fixed;
		z-index: 100;
		background: #fff;
		width: 100%;
		padding: 1.5% 0;
	}
	
	.menu .menu_inner {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-ms-flex-align: center;
		align-items: center;
	}

	.menu .logo {
		width: 15%;
		margin: 0 0 0 5%;
	}
	
	.menu .gtwk {
		background: linear-gradient(to right, #55cad9 0%, #0995a1 100%);
		color: #fff;
		font-size: 1.5em;
		padding: 1% 4% 0.5%;
		margin-right: 4%;
		border-radius: 5px;
	}

	/*    ----------------------------------------------------------------------- */
	
	.bg_box {
		position: relative;
		
		text-align: center;
		background-repeat: no-repeat;
		background-attachment: fixed;
		background-size: cover;
		padding: 1px;
		background-color: #fff;
	}
	
	canvas {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	
	/* simulation --------------------------------------------------------------- */
	
/*	.simulation {
		padding: 80px 0;
		background: url("../img/simulation/bg.jpg");
		background-attachment: fixed;
		background-size: cover;
		background-repeat: no-repeat;
	}*/
	
	.simulation .flex {
		flex-wrap: wrap;
		display: flex;
		align-content:stretch;
	}
	
	.simulation .item {
		width: 44%;
		margin: 3% 3%;
	}
	
	.simulation .item p {
		margin: 7% 0;
	}
	
	.blbg {
		padding: 30px 0;
		position: relative;
		z-index: 14;
		background-color: #cff0f6;
	}
	
	.blbg .img04 {
		width: 70%;
		max-width: 550px;
		margin: 0 auto;
		margin-top: -100px;
	}
	
	.simulation .img05 {
		width: 70%;
		max-width: 550px;
		margin: 0 auto;		
	}
	
	.blbg p,
	.bl03 p {
		text-align: center;
	}
	
	
	/* voice ------------------------------------------------------------------ */
	
/*	.voice {
		background: #fff;
		padding: 90px 0;
	}
	
	.voice .flex {
		flex-wrap: wrap;
		display: flex;
		align-content:stretch;
	}
	
	.voice .mv {
		width: 45%;
		margin: 3% 3%;
		padding: 0;
	}
	
	.voice .text {
		width: 45%;
		margin: 3% 0 0;
	}
	
	.voice .text h4 {
		font-size: 20px;
		font-weight: bold;
		color: #e60021;
		text-align: left;
		line-height: 1.35;
		margin: 0;
	}
		
	.voice h2 {
		border-bottom: 1px solid #ccc;
		font-size: 38px;
		font-weight: bold;
		color: #2e2e2e;
		text-align: center;
		line-height: 1.35;
		margin: 0 0 50px;
		padding-bottom: 10px;
	}
	
	.voice p {
		margin: 7% 0;
		text-align: left;
	}*/
	
	/* ben ---------------------------------------------------------------------- */

	.ben {
		padding: 9% 0 4%;
		background-color: #fff;
		background-image: url("../img/ben/separator_grid.gif");
		background-size: auto;
		border-top: 1px solid #e5e5e5;
		border-bottom: 1px solid #e5e5e5;
	}
	
	.ben .item {
		background-color: #ebf6f7;
		padding-bottom: 30px;
	}
	
	/* feature ------------------------------------------------------------------ */

	.feature {
		padding: 80px 0;
		background: url("../img/feature/bg.jpg");
		background-attachment: fixed;
		background-size: cover;
		background-repeat: no-repeat;
	}

	.feature .item {
		background-color: #fff;
		position: relative;
		z-index: 12;
		box-shadow: 3px 4px 14px rgba(0,0,0,0.4);
		padding-top: 50px;
	}
	
	.feature .nnb {
		width: 10%;
		margin: 0 auto;
	}
	
	.feature h2 {
		font-size: 1.9em;
		line-height: 1.4em;
		margin: 30px 50px;
		border-bottom: #bababa solid 1px;
		padding: 0 0 30px;
	}

	/* second ------------------------------------------------------------------- */

	.second {
		padding: 80px 0 30px;
		background-color: #fff;
		background-attachment: fixed;
		background-size: cover;
		background-repeat: no-repeat;
		position: relative;
		z-index: 11;
	}

	.second .text {
		background-color: #fff;
		padding: 50px 0;
	}
	
	.second .text h2 {
		font-size: 38px;
		font-weight: bold;
		color: #2e2e2e;
		text-align: center;
		line-height: 1.35;
	}
	
	.second .text p {
		margin: 0 0 50px;
	}


	/* Q&A ---------------------------------------------------------------------- */
	


	
	/* buy ---------------------------------------------------------------------- */
	
/*	.buy {
		padding: 0 0 80px;
		background: #fff;
	}
	
	.buy .title {
		background: url("../img/buy/title_bg.jpg");
		background-attachment: fixed;
		background-size: cover;
		background-repeat: no-repeat;
		padding: 80px 0;
		position: relative;
		z-index: 10;
	}

	.buy .title img {
		width: 70%;
		max-width: 550px;
	}
	
	.buy .title01 {
		margin-top: -100px;
	}*/
	
	.buy .title p {
		color: #fff;
		margin: 0 0 30px;
	}

    /* btn ---------------------------------------------------------------------- */

	.btn a {
		display: block;
		width: 70%;
		padding: 30px 0 20px;
		margin: 0 auto;
		color: #fff;
		font-size: 26px;
		font-size: 2rem;
		line-height: 90%;
		text-align: center;
		text-decoration: none;
		/*text-shadow: 0px 1px 0px #333;*/
		letter-spacing: 0;
		-webkit-border-radius: 1px 1px 5px 5px;
		-moz-border-radius:  1px 1px 5px 5px;
		border-radius:  300px;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
		cursor: pointer;
		*zoom: 1;
		max-width: 600px;
		position: relative;
		z-index: 26;
		font-weight: 600;
	}

	.btn a span {
		font-size: 1.2rem;
        line-height: 1.5;
		font-weight: normal;
	}

	.btn a:hover {
		box-shadow: none;
		transform: translate3d(0, 10px, 0);
	}

	.btn-green a {
		background-color: #659E57;
		background-size: 100%;
		box-shadow: 0 5px 0 #538548;
	}

	.btn-orange a {
		background-color: #FF884D;
		background-size: 100%;
		box-shadow: 0 5px 0 #E56E33;
	}
	
	.btn-blue a {
		background-color: #45aaf1;
		background-size: 100%;
		box-shadow: 0 5px 0 #2b86c6;
	}

	.btn-grey a {
		background-color: #888888;
		background-size: 100%;
		box-shadow: 0 5px 0 #4A4A4A;
	}

	.caution {
		background: rgba(255,255,255,1);
		padding: 35px 30px 15px;
		margin: 20px 100px 10px;
		font-size: 80%;
		line-height: 1.5em;
		border: 1px dotted #333;
		color:#000;
		text-align: center;
		border-radius: 10px;
	}

	.caution p {
		margin: 20px 0;
	}

	.caution h2 {
		margin-bottom: 10px;
		padding: 10px 5px;
		font-size: 18px;
		font-size: 20px;
		font-weight: normal;
		background: #f0f0f0;
		border-bottom: 1px dotted #ccc;
	}

    /* Unique ------------------------------------------------------------------- */

    .cdarea {
        font-family: 'Century Gothic';
        background: #F00;
        padding: 15px 0;
        text-align: center;
        color: #FFFFFF;
        font-weight: bold;
        font-size: 150%;

        position: relative;
        z-index: 100;
        box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.6);
        -moz-box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.6);
        -webkit-box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.6);

        background: -moz-linear-gradient(left, #ff0000 0%, #d50000 100%);
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, #ff0000), color-stop(100%, #d50000));
        background: -webkit-linear-gradient(left, #ff0000 0%, #d50000 100%);
        background: -o-linear-gradient(left, #ff0000 0%, #d50000 100%);
        background: -ms-linear-gradient(left, #ff0000 0%, #d50000 100%);
        background: linear-gradient(to right, #ff0000 0%, #d50000 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff0000', endColorstr='#d50000',GradientType=1 );
    }

    .cdarea span {
        margin: 0 0 0 10px;
        font-size: 150%;
        vertical-align: -10%;
    }

    #jump {
        position: fixed;
        bottom: 10px;
        right: 10px;
        z-index: 100;
    }

    #jump a {
        outline: none;
    }
	

    /* Sub ---------------------------------------------------------------------- */

    .sub .wrap {
        padding: 70px 0 20px;
        margin: 50px auto;
        font-size: 90%;
    }

    .sub h1 {
        text-align: center;
    }

    .sub h2 {
        margin: 50px 100px -30px;
    }

    .sub p {
        margin: 50px 100px;
    }

    .sub table {
        width: 700px;
        margin: 50px 100px;
    }

    .sub table th {
        width: 24%;
        padding: 3% 0;
        border-bottom: solid 1px #DDDDDD;
    }

    .sub table td {
        width: 68%;
        padding: 3% 4%;
        border-bottom: solid 1px #DDDDDD;
    }



    /* General Purpose ---------------------------------------------------------- */


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

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

    .bgyellow {
        background: #FF0 !important;
    }

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

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

    .red {
        color: #F00 !important;
    }
	
	.gold {
		color: #daa700 !important;
	}

    .fsS {
        font-size: 80% !important;
    }

    .fsM {
        font-size: 150% !important;
        line-height: 1.8em !important;
    }

    .fsL {
        font-size: 200% !important;
        line-height: 1.8em !important;
    }



    .pc {
        display: inline;
    }

    .sp {
        display: none;
    }
	



    /* margin padding ---------------------------------------------------------- */

    .mt0 {margin-top:0 !important;}
    .mt10 {margin-top:10px !important;}
    .mt20 {margin-top:20px !important;}
    .mt30 {margin-top:30px !important;}
    .mt40 {margin-top:40px !important;}
    .mt50 {margin-top:50px !important;}
    .ml0 {margin-left:0 !important;}
    .ml10 {margin-left:10px !important;}
    .ml20 {margin-left:20px !important;}
    .ml30 {margin-left:30px !important;}
    .ml40 {margin-left:40px !important;}
    .ml50 {margin-left:50px !important;}
    .mr0 {margin-right:0 !important;}
    .mr10 {margin-right:10px !important;}
    .mr20 {margin-right:20px !important;}
    .mr30 {margin-right:30px !important;}
    .mr40 {margin-right:40px !important;}
    .mr50 {margin-right:50px !important;}
    .mb0 {margin-bottom:0 !important;}
    .mb10 {margin-bottom:10px !important;}
    .mb20 {margin-bottom:20px !important;}
    .mb30 {margin-bottom:30px !important;}
    .mb40 {margin-bottom:40px !important;}
    .mb50 {margin-bottom:50px !important;}
    .pt0 {padding-top:0 !important;}
    .pt10 {padding-top:10px !important;}
    .pt20 {padding-top:20px !important;}
    .pt30 {padding-top:30px !important;}
    .pt40 {padding-top:40px !important;}
    .pt50 {padding-top:50px !important;}
    .pl0 {padding-left:0 !important;}
    .pl10 {padding-left:10px !important;}
    .pl20 {padding-left:20px !important;}
    .pl30 {padding-left:30px !important;}
    .pl40 {padding-left:40px !important;}
    .pl50 {padding-left:50px !important;}
    .pr0 {padding-right:0 !important;}
    .pr10 {padding-right:10px !important;}
    .pr20 {padding-right:20px !important;}
    .pr30 {padding-right:30px !important;}
    .pr40 {padding-right:40px !important;}
    .pr50 {padding-right:50px !important;}
    .pb0 {padding-bottom:0 !important;}
    .pb10 {padding-bottom:10px !important;}
    .pb20 {padding-bottom:20px !important;}
    .pb30 {padding-bottom:30px !important;}
    .pb40 {padding-bottom:40px !important;}
    .pb50 {padding-bottom:50px !important;}





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


    /* Base ----------------------------------------------------------------- */

    body {
        background: #f6f6f6;
        width: 100%;
    }

    .wrap,
	.inner {
        width: 92%;
		margin: 0 4%
    }

    img {
        width: 100%;
        height: auto;
    }

	hr {
		margin: 0 0 2%;
	}	
	
    p {
        margin: 7% 5%;
		font-size: 15px;
    }

    p br {
        display: inline;
    }
	
    header {
		margin-top:4em!important;
        padding-top:5em;
		padding-bottom:6em;
		background-image: url("../img/top_sp.jpg");
		background-size: cover;
		background-position: center center;
		position: relative;
		background-repeat: no-repeat;
		top: 0;
    }	
	
	header img {	
		width: 90%;
		margin-left: 5%;
	}
    
   footer {
        margin: 0;
        padding: 7% 0 6%;
    }
	
    footer h3 {
        margin: 7% 0 2%;
        padding: 0 0 0 5px;
        text-align: left;
        font-size: 1.3em;
        font-weight: normal;
        letter-spacing: 0.05em;
        border-left: solid 4px #fff;
        line-height: 12px;
    }
	
    footer a {
        font-size: 0.9em;
    }
	
    footer .sctl{
        position: relative;
        margin: 0 1.0rem 0 0;
    }
	
    footer .sctl::after{
        margin: 0 0.7rem;
        width: 1px;
        height: 12px;
        top: 1%;
    }
	
    footer .info{
        padding: 0 0 2% 2%;
        margin: 0 3% 2%;
        width: 90%;
    }
	
	.obi {
		font-size: 1.1em;
		padding: 3% 0 2%;
	}
	
	button {
		padding: 0;
	}
	
	/* default ------------------------------------- */
	
	.section_inner {	
		width: 96%;
		margin: 0 2%;
	}
	
	.title h2 {
		font-family: 'Oswald', sans-serif!important;
		font-size: 28px;
		letter-spacing: 0.07em;
	}
	
	.title h3 {
		font-size: 11px;
	}
	
	
	/* menu ----------------------------------------- */
	
	.header_menu,
	.menu_pc {
		display: none;
	}
	
.demobox-header{
background: #fff;
max-height:4em;
padding: 4% 0% 4% 5%;
position: fixed;
top: 0;
position: fixed;
display: block;
z-index: 10000000;
width: 95%;
}

/* headerのサイト名（デモの参考値） */
.demobox-sitename{
width: 170px;
display: inline-block;
}

/* 全体調整CSS */
.hamburger-demo-menubox *{
	font-size: 16px;
}
.hamburger-demo-menubox li{
	font-size: 14px;
}
/* hamburgerここから */
	/* inputを非表示 */
.input-hidden{
	display: none;
}
	/* label */
.hamburger-demo-switch{
	cursor: pointer;
	position: absolute;
	right: 3%;
	top: 0; /* ハンバーガーアイコンの位置（上から） */
	z-index: 9999;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 3.8em; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburger-demo-switch{
	position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after{
	width: 25px;
	height: 3px;
	background: #333; /* ハンバーガーアイコンの色 */
	position: absolute;
	top: 50%;
	left: 50%;
	transition: .3s;
	content: "";
}
.hamburger-switch-line1{
		transform: translate(-50%, -50%);
}
.hamburger-switch-line1:before{
	transform: translate(-50%, -300%);
}
.hamburger-switch-line1:after{
	transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1{
	width: 0;
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:before{
	transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:after{
	transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburger-demo-menuwrap{
	position: fixed;
	height: 100%;
	background: #fafafa; /* メニューエリアの背景色 */
	padding: 5em 3% 2em;
	z-index: 9998;
	transition: .3s;
	overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
	top: 0;
	left: 100%;
	width: 70%;
}
/* メニューリスト */
.hamburger-demo-menulist{
	margin-right: 3%;
	padding-left: 5% !important; /* !important不要な場合もあり */
	list-style: none;
}
.hamburger-demo-menulist li a{
	text-decoration: none;
	color: #333; /* メニューリストの文字色 */
	display: block;
	padding: 0 0 4%;
}

.hamburger-demo-menulist span {
border-bottom: #2fb0bd solid 0.03px;
margin: 0 15% 9% 0;
display: inherit;
color: #2fb0bd;
font-weight: bold;
}

/* メニューエリア･アニメーション */
	/* 右から */
#hamburger-demo1:checked ~ .hamburger-demo-menuwrap{
	left: 30%;
}
	/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburger-demo-cover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.5);
	display: block;
}
	
	/* gnav --------------------------------------------------------------------- */


	.gnav {
		padding: 4% 0 3.5%;
		color: #fff;
	}
	
	.gnav_inner {
		width: 92%;
		margin: 0 4%;		
		padding: 0;
	}
	
	.gnav ul {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	
	.gnav li {
        -ms-flex: 0 0 31%;
        flex: 0 0 31%;
		font-size: 0.45em;
	}
	
	.gnav li a {
		padding: 8% 0 5%;
	}
	
    .gnav li span{
        font-size: 2.0em;
    }
	
	/* sponsors -------------------------------------- */
	
	.sponsors {
		padding: 9% 0 4%;  
	}
	
    .name,
    .name2{
        top: 74%;
        width: 50%;
        padding: 2% 3% 1.5% 5%;
        font-size: 65%;
        height: 40px;
    }
	
    .name2 span{
        line-height: 40px;
    }
	
    .sponsors .text{
		width: 94%;
		margin: 0 3%;
		padding: 15% 0 5%;
        font-size: 0.9em;
        letter-spacing: 0.04em;
    }
	
	.sponsors .section-title {	
		margin: 6% 0;
	}
	
	.sponsors .section-title h4 {	
		font-size: 1.1em;
		padding: 0 5%;
		text-align: center;
	}
	
	.sponsors .text span {
 	   font-size: 1.2em;	
	}

	/* information --------------------------------------- */
    
    .info_text {
        padding: 5%;
        margin: 0;
        background: #fff;
    }

	/* plan ------------------------------------ */

	.plan {
		padding: 5% 0;
	}

	.plan_box h4 {
		padding: 2% 3% 1%;
		font-size: 1em;
	}
	
	.plan_box {
		padding-bottom: 1%;
	}

	/* features ------------------------------------ */
	
	.features {
		padding: 5% 0;
	}
	
	.features .section-title {
		margin: 6% 0;
	}
	
	.features .section-title h4 {
		font-size: 1.1em;
		padding: 0 5% 1%;
	}
	
	.features .section-title h4 span {
		font-size: 1.5em;
	}
	
	.features p {
		margin: 5% 7%;
		font-size: 0.9em;
	}
	
	.features .wrap {
		width: 98%;
		margin: 0 1%;
	}
	
	/* change -------------------------------------- */
	
	.change {
		padding: 5% 0;
	}
	
	.change .me_title {
		padding: 7% 0 6%;
	}
	
	.change .me_title img {
		width: 60%;
		margin: 0 20%;
	}
	
	.change .title {
		margin-top: 7%;
	}

	.change .flex {
		display: block;
        margin: 5% 0;
	}
	
	.change .flex_item {
        width: 94%;
        margin: 0 3%;
        padding: 0;
        font-size: 14px;
        font-weight: bold;
        line-height: 1.85;
        letter-spacing: 0.03em;
	}
	
	.change h4 {
        padding: 2%;
        font-size: 1.3em;
        display: inline-block;
        margin: 0;
        position: relative;
        font-weight: bold;
        letter-spacing: 0.08em;
	}
	
    .change img{
        margin: 6% 0;
    }
	
    .change .line{
        margin-bottom: 6%;
    }
	
    .change .line_left{
        position: relative;
        left: -20px;
    }
	
    .change .line_right{
        position: relative;
        text-align: right;
        right: -20px;
    }
	
	/* ormv ---------------------------------------- */
	
	.ormv {
		padding: 5% 0;
	}
	
	.ormv h4 {
		font-size: 1.1em;
		letter-spacing: 0;
	}
	
	.skmcn {
		padding: 5% 0;
		font-size: 0.9em;
	}
	
	.skmcn p {
		margin: 5% 0 0;
	}
	
	/* comparison ---------------------------------- */
	
	.comparison .wrap {	
		width: 94%;
		margin: 0 3%;
	}
    
	/* simulation ---------------------------------- */
	
	.simulation {
		margin: 3%;
	}
	
	.simulation01 p {
		margin: 5% 0;
		font-size: 14px;
	}
	
	.simulation01 .border-box .title {
		width: 80%;
	}
	
	.simulation .wrap {	
		width: 98%;
		margin: 0 1%;
	}
	
	.border-box .step-list {
		margin-bottom: 24px;
		font-weight: bold;
		font-size: 0.7em;
		line-height: 1.85;
		letter-spacing: 0.03em;
		width: 94%;
		margin: 0 3%;
	}

	.border-box {	
		padding: 10% 5% 10%;
		margin-top: 10%;
	}

	.border-box .step-list .step {
		font-size: 0.8em;
		border-radius: 20px;
		height: 28px;
		width: 14%;
		text-align: center;
		line-height: 30px;
		display: inline-block;
		margin-right: 2.66667vw;
	}
	
	.simulation01 .sub_title {
		font-size: 1.1em;
	}
	
	.sim_img01 {
		padding: 5%;
		border-radius: 5px;
	}
	
	.simulation02 .sub_title {
		font-size: 1.4em;
		margin-bottom: 5%;
	}

	.simulation02 .wrap {
		width: 90%;
		margin: 0 5%;
	}
	
	.sim_img05 {
		padding: 8%;
	}

	.simulation02 p {
		margin: 5% 5%;
		font-size: 0.9em;
	}
	
	.simulation03 {	
		padding: 5% 0;
	}

	.simulation03 .sub_title {
		padding: 2% 0% 1%;
		width: 90%;
		margin: 0 auto;
		font-size: 1.4em;
	}
	
	.sim_img07 {
		margin: 7% 3%;
	}

	/* buy ---------------------------------------------------------------------- */
	
	.buy {
		padding: 5% 0 0;   
	}
    
    .price {
		padding: 0 0 5%;
	}
	
	/* voice ------------------------------------------------------------------ */
	
	.voice {
		background: #eff5f6;
		padding: 6% 0;
	}
	
	.voice .sub_title {
		font-size: 1em;
		letter-spacing: 0;
		margin: 0;
	}
	
	.voice .wrap{
        width: 90%;
        margin: 0 5%;
    }
	
	.voice .flex {
        display: block;
	}
	
	.voice .mv {
        width: 100%;
        margin: 5% 0;
	}
	
	.voice .text1,
    .voice .text2,
    .voice .text3{
        margin: 10%;
        font-size: 1.0em;
	}
	
	.voice .text1 span,
    .voice .text2 span,
    .voice .text3 span{
        border-radius: 25px;
        padding: 3% 5%;
    }
	
	.voice h2 {
        font-size: 1.8em;
        letter-spacing: 0.03em;
        line-height: 1.4em;
	}
	
    .voice h3 {
        margin: 3% 0 7%;
    }

	/* message ------------------------------------------------------------------ */
	
	.message .section01 p {
		margin: 8% 0;
	}

	.message .section01 {
		padding: 8% 3% 3%;
	}
	
	.message .section02 {	
		padding: 7% 0;
	}
	
	.message .section03 {
		padding: 5% 3% 1%;
	}
	
	.me_item p {
		margin: 5% 0;
	}
	
	.me_item {
		width: 94%;
		margin: 0 3%;
	}

	.me_flex {
		display: block;
	}

	/* ben ---------------------------------------------------------------------- */

	.ben,
	.comparison {
		padding: 5% 0;
	}
	
	.ben p {
		font-size: 0.9em;
	}
	
	.ben .item {
		background-color: #ebf6f7;
		padding-bottom: 30px;
	}
	
	/* second ------------------------------------------------------------------- */

	.second {
		padding: 5% 0 0;
	}
	
	.second .section-title {
		margin: 6% 0;
	}
	
	.second .wrap {
		width: 94%;
		margin: 0 3%;
	}
	
	.second .section-title h4 {
		font-size: 1.1em;
		padding: 0 5%;
		text-align: center;
		line-height: 1.3em;
	}

	.second .text {
		padding: 5% 0;
	}
	
	.second .text h2 {
		padding: 0 0 4px;
		font-size: 1.2em;
	}
	
	.second .text p {
		margin: 7% 0;
		font-size: 0.9em;
		text-align: left;
	}
	
	
	/* btn --------------------------------------------------------------- */
	
	.btn {
	width: 94%;
	padding: 0;
	margin: 7% 3% 3%;}

	.btn a {
	width: 90%;
	padding: 6% 0 4%;
	margin: 0 auto;
	font-size: 125%;
	font-size: 1.25rem;
	line-height: 90%;}
	
	.btn a span {
	font-size: 100%;
	font-size: 0.9rem;
    }

	.btn a:hover {
	transform: translate3d(0, 9px, 0);}

    /* Unique --------------------------------------------------------------- */

    .cdarea {
        padding: 2% 0;
        font-size: 90%;
    }

    .cdarea span {
        margin: 0 0 0 1%;
        font-size: 150%;
        vertical-align: -5%;
    }

    #jump {
        width: 15%;
        bottom: 1%;
        right: 1%;
    }
	
	/* qa ------------------------------------------------------------------- */
	
	.faq {
		padding: 5% 0;
	}
	
    .faq .wrap{
        width: 92%;
        margin: 0 4%;
    }
	
	.faq .title {
		width: 50%;
        margin: 0 25% 5%;
	}
	
    .hidden_box {
        margin: 1em auto;
    }
	
	.hidden_box label {
		padding: 5% 12%;
        font-size: 14px;
        line-height: 1.85;
        letter-spacing: 0.03em;
	}
	
	.hidden_box label:before {
		top: 50%;
        left: 15px;
        font-size: 14px;
	}
	
	.hidden_show p {
		padding: 0 2em;
        font-size: 13px;
	}

    /* Sub ---------------------------------------------------------------------- */

    .sub .wrap {
        padding: 10% 0 3%;
        margin: 0;
        font-size: 90%;
        line-height: 1.5em;
    }

    .sub h1 {
        text-align: center;
        font-size: 150%;
    }

    .sub h2 {
        margin: 7% 5% -4%;
        font-size: 120%;
    }

    .sub p {
        margin: 7% 5%;
    }

    .sub table {
        width: 95%;
        margin: 7% 2%;
        border-bottom: solid 1px #EEEEEE;
    }

    .sub table th {
        display: block;
        clear: both;
        width: 100%;
        background: #FAFAFA;
        padding: 0.5% 0;
        border: solid 1px #EEEEEE;
        border-bottom: none;
    }

    .sub table td {
        display: block;
        clear: both;
        width: 90%;
        padding: 2% 5%;
        border: solid 1px #EEEEEE;
        border-bottom: none;
    }



    /* General Purpose ------------------------------------------------------ */



    .pc {
        display: none;
    }

    .sp {
        display: inline;
    }



    /* margin padding ---------------------------------------------------------- */

    .mt10 {margin-top:1% !important;}
    .mt20 {margin-top:2% !important;}
    .mt30 {margin-top:3% !important;}
    .mt40 {margin-top:4% !important;}
    .mt50 {margin-top:5% !important;}
    .ml10 {margin-left:1% !important;}
    .ml20 {margin-left:2% !important;}
    .ml30 {margin-left:3% !important;}
    .ml40 {margin-left:4% !important;}
    .ml50 {margin-left:5% !important;}
    .mr10 {margin-right:1% !important;}
    .mr20 {margin-right:2% !important;}
    .mr30 {margin-right:3% !important;}
    .mr40 {margin-right:4% !important;}
    .mr50 {margin-right:5% !important;}
    .mb10 {margin-bottom:1% !important;}
    .mb20 {margin-bottom:2% !important;}
    .mb30 {margin-bottom:3% !important;}
    .mb40 {margin-bottom:4% !important;}
    .mb50 {margin-bottom:5% !important;}
    .pt10 {padding-top:1% !important;}
    .pt20 {padding-top:2% !important;}
    .pt30 {padding-top:3% !important;}
    .pt40 {padding-top:4% !important;}
    .pt50 {padding-top:5% !important;}
    .pl0 {padding-left:0 !important;}
    .pl20 {padding-left:2% !important;}
    .pl30 {padding-left:3% !important;}
    .pl40 {padding-left:4% !important;}
    .pl50 {padding-left:5% !important;}
    .pr10 {padding-right:1% !important;}
    .pr20 {padding-right:2% !important;}
    .pr30 {padding-right:3% !important;}
    .pr40 {padding-right:4% !important;}
    .pr50 {padding-right:5% !important;}
    .pb10 {padding-bottom:1% !important;}
    .pb20 {	padding-bottom:2% !important;}
    .pb30 {padding-bottom:3% !important;}
    .pb40 {padding-bottom:4% !important;}
    .pb50 {padding-bottom:5% !important;}

    }





    /* ==========================================================================
    Media Queries
    ========================================================================== */

    @media only screen and (min-width: 35em) {

    }

    @media print,
    (-o-min-device-pixel-ratio: 5/4),
    (-webkit-min-device-pixel-ratio: 1.25),
    (min-resolution: 120dpi) {

    }

    /* ==========================================================================
    Helper classes
    ========================================================================== */

    .hidden {
        display: none !important;
        visibility: hidden;
    }

    .visuallyhidden {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .visuallyhidden.focusable:active,
    .visuallyhidden.focusable:focus {
        clip: auto;
        height: auto;
        margin: 0;
        overflow: visible;
        position: static;
        width: auto;
    }

    .invisible {
        visibility: hidden;
    }

    .clearfix:before,
    .clearfix:after {
        content: " ";
        display: table;
    }

    .clearfix:after {
        clear: both;
    }

    .clearfix {
        *zoom: 1;
    }

    /* ==========================================================================
    Print styles
    ========================================================================== */

    @media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
    max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    }

/* ボタン------------------------------------------------------------ */
.fixed_btn {
position: fixed!important;
bottom:0;
background: #2d2d2d;
border-top: solid 1px #6c6c6c;
z-index: 99999; 
/* 他の要素の下に隠れないように全面配置させます */
display:block; /* 消していたスマホ用のバナーを表示させます */
width:100%; /* スマホの画面幅いっぱいにバナーを表示させます */
padding-top:.5em;
padding-bottom:.5em;
opacity: 1;
visibility: visible;
}

.sp_btn{
margin: 0 auto;
background-repeat: no-repeat; /* 画像の繰り返しを指定 */
background-size:cover; /* 画像のサイズを指定 */
	text-align:center;
}

.fixed_btn a:hover{
opacity: .8; /* マウスが重なった時に少し透過させます */
}

/* pc btn float -------------------------------------------------------------------- */
@media screen and (min-width: 641px) {
.btn_bg {
background-color: rgba(0,0,0,0.9);
padding: 0;
        width: 50px;
        position: fixed;
        bottom: 10px;
        margin: 0;
        right: 0;
        border: 0;
		z-index: 10000000000;
	}

.btn_float {
        padding: 0;
        width: 15%;
        position: fixed;
        bottom: 4%;
        right: 2%;
        border: 0;
		z-index: 100000000000;
		display:block;
        animation:0.65s ease-in 1s infinite alternate forwards running expansion;
        animation-name: expansion;
        transform: scale(0.90,0.90);
    }
    
.btn_float a {
        margin: 0 auto;
        padding: 5% 0;
        font-size: 18px;
        font-size: 4.8vw;
        color: #fff;
        font-weight: bold;
        text-align: center;
        cursor: pointer;
    }
.btn_float a img {
        width: 100%;
    }
}

@keyframes expansion{
        100% {
          transform: scale(1,1);
        }
    }

@media screen and (max-width: 640px) {
    .btn_float {
        display: none;
	}
	}



@media screen and (min-width: 641px) {
.fixed_btn {
display: none!important; /* PCではスマホ用のバナーは非表示にします */
}
}


    /* ==========================================================================
    10/11変更分
    ========================================================================== */

