@charset "utf-8";
/* CSS Document*/


body {font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;}




.center {
	text-align:center;
}

a {
	text-decoration:none;
}


.space5 {
	height:5px;
}

.space10 {
	height:10px;
}

.space20 {
	height:20px;
}

.space30 {
	height:30px;
}

.space40 {
	height:40px;
}

.space50 {
	height:50px;
}

.space70 {
	height:70px;
}

.space100 {
	height:100px;
}

.space150 {
	height:150px;
}

.space200 {
	height:200px;
}

.space300 {
	height:300px;
}


.white {
	color:#FFF;
}

.red {
	color:#F00;
}

.redpink {
	color:#E50044;
}

.orange {
	color:#ED6C00;
}

.green {
	color:#1EAA39;
}

.gray {
	color:#999;
}



.font90 {
	font-size:90%;
}

.font-13b {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 13px;
}

.font-14b {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 14px;
}

.font-25b {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 25px;
	font-weight: bold;
}

.font-20 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 20px;
}

.font-20b {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 20px;
    font-weight: bold;
}


.letter-spacing0 {
	letter-spacing:0px;
}

.dropshadow:hover {
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

#sp-gnav{
	display: none;
}

.mobilelink {
	display:none;
}


.slicknav_menu {
	display:none;
}

#headerTop-in {
	margin-left:auto;
	margin-right:auto;
	margin-top:0px;
	padding-top:2px;
	padding-bottom:7px;
	width:980px;
}

.bg-slider {
	width: 100%;
	height: 600px;
	background-position:center center;
	background-size: cover;
	margin-bottom:-80px;
	
	position: relative;
}

.logo {
	padding-top:110px;
	margin: auto;
	width:474px;
}

#latest_news{
    margin: auto;
    margin-top: 15px;
    background-image: url(../image/latest_news.png);
    background-repeat: no-repeat;
    width: 440px;
    height: 75px;
}

.latest_news_inner{
    padding-top: 8px;
    margin-left: 45px;
    margin-right: 25px;
    font-size: 0.8em;
}

.latest_news_inner a:hover{
    	color: #000;
}

.latest_news_date{
    float: left;
}

.latest_news_content{
    font-weight: bold;
    clear: both;
}

.latest_news_content:hover{
    text-decoration: underline;
}

.past_news{
    padding-top: 26px;
    margin-left: 45px;
    margin-right: 25px;
    font-size: 0.8em;
    font-weight: bold;
}

#sp-latest_news{
	display: none;
}

.digi-spt {
	position: absolute;
	right: 0px;
	top: 330px;
}

.digi-btn {
	padding-top:130px;
	font-size:14px;
}



/* ページ内リンク：上部スペース指定 */
#faq4-6 {
	padding-top:80px;
	margin-top:-80px;
}



/* ヘッドリンク */

.headlink-small{
	display: none;
}

.headlink {
	width:100%;
	z-index: 100;
	
	position: relative;
}

.headlink-back {
	margin-top:0px;
	background-color:#FFF;
	height:80px;
	background: rgba(255,255,255,0.4);

}

.headlink ul {
    	margin-left:auto;
	margin-right:auto;
	padding-top:16px;
	width:940px;
	overflow:hidden;
}

.headlink ul li {
	float:left;
	margin-left:15px;
	margin-right:15px;
	overflow:hidden;
	text-align:center;
}

.headlink ul li h2 {
	line-height:140%;
}

.headlink-margin {
	padding-top:13px;
}

.headlink-float00 {
	overflow:hidden;
}

.headlink-float {
	float:left;
	margin-left:2px;
	margin-right:2px;
}

.headlink-float00 img {
	width:18px;
	margin-top:4px;
}


/*------headlink固定----*/
.fixed {
	position: fixed;
	top: 0;
}

.headlink-back-fixed {
	background: rgba(255,255,255,0.9);
}
/*-------------------*/



.login-menu {
	margin-top:5px;
	width:150px;
	overflow:hidden;
}

.border-radius {
    width: 150px;/*115px*/
    height:40px;
    margin:auto;
    padding:10px;
    text-decoration: none;
    display: block;
    background:#E50044;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}


.login-btn {
    padding-left:30px;
    overflow:hidden;
}

.login-btn:hover {
    background: #F03; 
    cursor: pointer;
}

.login-btn h2 {
    margin-top:-1px
}

.login-float {
    float:left;
    margin-left:2px;
    margin-right:1px;
}

.login-btn img{
    width:18px;
    transition: all 0.2s;
}

.login-btn-open{
    transform: rotate(90deg);
}

.login-btn-in {
    display: none;
    width: 150px;
    height: 115px;
    position: absolute;
    background-image:url(../image/login-in-back.png);
    background-repeat:no-repeat;
}

.login-btn-in-btn {
    width: 130px;
    height:33px;
    margin:auto;
    margin-top:18px;
    padding-top:6px;
    padding-left:5px;
    text-decoration: none;
    display: block;
    background:#E07574;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}

.login-btn-in-btn:hover {
    background:#E50044;
}



/* コンテント */

.content {
	width: 100%;
	
	margin-left:auto;
	margin-right:auto;
}


/*---- お問い合わせ ----*/
.ask-float {
    position: fixed;
    right: 0px;
    bottom: 50px;
    /*padding-bottom: 0px;*/
}

.ask-btn {
    position: relative;
    background-image: url(../image/ask-btn.png);
    background-repeat: no-repeat;
    width: 90px;
    height: 100px;
}

.ask-btn:hover {
    background-image:url(../image/ask-btn_clicked.png);
}

.ask-btn a {
    display: block;
    width: 90px;
    height: 102px;
}

/*----ikoi-twitter----*/
#ikoi-twitter{
    position: fixed;
    right: -100px;
    top: 100px;
}

#ikoi-twitter img{
    animation: ikoi_float 5s linear infinite;
    transform-origin: 50% 50%;
}

@keyframes ikoi_float {
    0% { transform: translateY(0) }
    25% { transform: translateY(-10px) }
    50% { transform: translateY(0) }
    75% { transform: translateY(10px) }
    100% { transform: translateY(0) }
}

#ikoi-twitter img:hover{
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1;
}
/*----ikoi-twitter END----*/



/*お知らせ*/
.news{
    background-color: #f5f5f5;
}

.news_wrapper{
    margin: auto;
}

.news_contents{
    margin: 10px 35px;
}

.news_contents dt{
    font-size: 13px;
    padding-top: 8px;
}

.news_contents dd{
    padding-bottom: 8px;
    border-bottom: 3px dotted #C3C3C3;
}

.news_contents dd a:hover{
    text-decoration: underline;
}

.new_icon{
    display: none;
}
.is-show{
    display: inline-block;
    font-size: 10px;
    margin-left: 10px;
    padding: 0px 10px;
    background-color: #FF6600;
    color: #fff;
    border-radius: 20px;
}

/*---------news個別ページ------------*/
.news_indv_wrapper{
    margin: 10px 50px;
}

.news_indv_date{
    text-align: right;
    margin-bottom: 40px;
}
.news_indv_title{
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
}

.news_indv_content{
    margin: 50px 0px;
}

.news_indv_toList{
    font-size: 0.8em;
    padding: 5px;
    background-color: #f08080;
    width: 130px;
    text-align: center;
    border-radius: 5px;
}

.news_indv_toList a{
    color: #fff;
    font-weight: bold;
}


/*朝起きてから眠りにつくまで*/
.concept {
	background-image:url(../image/back00.jpg);
	margin-right: auto;
	margin-left: auto;
	padding-top:50px;
	padding-bottom:60px;
	text-align:center;
	width:100%;
}

.concept h4 {
	color:#6A3906;
	margin:5px;
}


#point {
	background-color:#FCEAE5;
}

.point-in {
	background-image:url(../image/point-back01.png);
	background-repeat:no-repeat;
	background-position:top center;
	padding-top:70px;
	padding-bottom:50px;
}

.point00 {
	margin-right: auto;
	margin-left: auto;
	width:800px;
	margin-bottom:70px;
	overflow:hidden;
}

.topics-title {
	margin-top:10px;
	margin-bottom:30px;
}

.topics-text {
	margin-top:30px;
}

.topics-text h2 {
	margin:7px;
}

.point03sub01 {
	background-image:url(../image/point03-back01.png);
	background-repeat:no-repeat;
	margin:auto;
	width:840px;
	height:200px;
	padding-top:60px;
	margin-bottom:30px;
	overflow:hidden;
}

.point03sub-A {
	float:left;
	width:420px;
}

.point03sub-title {
	margin:5px;
	overflow:hidden;
}

.point03subA-title {
	margin:auto;
	margin-top:5px;
	margin-bottom:5px;
	width:220px;
	overflow:hidden;
}

.point03subA-title-in {
	float:left;
}

.point03subA-text {
	margin:auto;
	width:380px;
}

.red-round {
	float:left;
	color:#FFF;
	font-size:13px;
	width:80px;
	height:23px;
	margin-top:5px;
	margin-left:5px;
	padding-top:1px;
    text-decoration: none;
    display: block;
    background:#E50044;
	border-radius: 20px;
    -webkit-border-radius: 20px;/* for Safari and Chrome 対応*/
    -moz-border-radius: 20px;/* for Firefox 対応*/
}

.point03sub02 {
	background-image:url(../image/point03-back02.png);
	background-repeat:no-repeat;
	margin:auto;
	width:840px;
	height:225px;
	padding-top:60px;
	margin-bottom:70px;
	overflow:hidden;
}

.point03sub-B {
	float:left;
	width:280px;
}

.point03subB-title {
	margin:auto;
	margin-top:5px;
	margin-bottom:5px;
	width:230px;
	overflow:hidden;
}

.point03subB-title-in {
	float:left;
}

.point03subB-text {
	padding-left:10px;
	padding-right:10px;
}

.point_support{
	margin-top: 0px;
	margin-bottom: 20px;
	width: 600px;
	padding: 20px 0px;
	border: 4px dotted #ec7978;
	border-radius: 10px;
	background:rgba(255,255,255,0.6)
}

.point_support h5{
	line-height: 46px;
}


/* 授業の流れ */


.stream {
	background-color:#F8F6E3;
}

.stream-in {
	margin:auto;
	width:960px;
	padding-top:60px;
	padding-bottom:70px;
}

.stream-topic {
	padding:10px;
}

.stream-yaji {
	padding:10px;
	padding-bottom:30px;
}

.steam-2column {
	overflow:hidden;
}

.stream-left {
	float:left;
	width:640px;
	text-align:center;
}

.stream-left-in img {
	width:550px;
}

.stream-right {
	float:left;
	width:320px;
}

.stream-right-in {
	width:285px;
}

.stream-right-text {
	margin-bottom:15px;
}

.stream-sub01 {
	background-image:url(../image/stream-sub01.png);
	background-repeat:no-repeat;
	background-size: 285px 285px;
	width:285px;
	height:285px;
	padding-top:15px;
	padding-left:20px;
}

.stream-sub02 {
	background-image:url(../image/stream-sub02.png);
	background-repeat:no-repeat;
	background-size: 285px 535px;
	width:285px;
	height:535px;
	padding-top:15px;
	padding-left:20px;
}

.stream-sub-title {
	margin-bottom:5px;
	overflow:hidden;
}

.stream-sub-title-in {
	float:left;
}

.stream-sub01 p{
	width:240px;
}

.stream-sub02 p{
	width:240px;
}


/* 価格 */

.price-env {
	background-color:#FFFDF7;
}

.price-env-in {
	padding-top:60px;
	padding-bottom:70px;
}

.price-sheet {
	background-image:url(../image/price-sheet-back.png);
	background-position:center;
	background-repeat:no-repeat;
	margin:auto;
	margin-top:30px;
	width:960px;
	height:350px;
	overflow:hidden;
}

.price01 {
	float:left;
	background-image:url(../image/price-sheet-back02.png);
	background-repeat:no-repeat;
	margin-top:72px;
	margin-left:30px;
	width:123px;
	height:110px;
	padding-left:17px;
	padding-top:30px;
}

.price02 {
	float:left;
	margin-top:80px;
	margin-left:20px;
}

.price02 ul li {
	margin-bottom:45px;
	text-align:center;
}

.price03 {
	float:left;
	background-image:url(../image/price-sheet-back01.png);
	background-repeat:no-repeat;
	width:310px;
	height:340px;
	margin-top:10px;
	margin-left:30px;
}

.price03-title {
	margin:10px;
}

.price03 ul {
	margin-top:20px;
}

.price03 ul li {
	margin-bottom:33px;
	text-align:center;
}

.price-note {
	margin:auto;
	margin-top:10px;
	width:960px;
	text-align:right;
}

.price-license {
	margin:auto;
	margin-top:30px;
	margin-bottom:50px;
	width:960px;
	overflow:hidden;
}

.price-license01 {
	float:left;
	margin:15px;
}

.price-license01-title {
	width: 450px;
	height:50px;
	margin:auto;
	margin-bottom:10px;
	padding-top:8px;
	text-align:center;
    text-decoration: none;
    display: table;
    background:#F1E9A6;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

.price-license01-text {
	margin:20px;
}

.price-license table {
	background-color:#FFF;
	border:solid 1px #FFFDF7;
	border-top:solid 1px #000;
	border-bottom:solid 1px #000;
	font-size: 15px;
	width:450px;
	text-align:center;
}

.price-license table td {
	border:dashed 1px;
	height:60px;
	vertical-align:middle;
}

.price-subtext {
	margin:15px;
}


/* 動作環境 */

.env {
	margin:auto;
	margin-top:30px;
	margin-bottom:50px;
	width:960px;
}

.env table {
	border:solid 1px #FFFDF7;
	border-top:solid 1px #000;
	border-bottom:solid 1px #000;
	font-size: 15px;
	width:960px;
}

.env table th {
	background-color:#EEEEEF;
	border:dashed 1px;
	border-top:none;
	border-bottom:none;
	height:40px;
	vertical-align:middle;
}

.env table td {
	border:dashed 1px;
	border-top:none;
	border-bottom:solid 1px;
	padding:30px;
	vertical-align:middle;
	line-height:27px;
}

.env-width01 {
	width:420px;
}

.env-width02 {
	width:180px;
}

.env-width03 {
	width:360px;
}

.env-subtext {
	margin-top:15px;
	margin-bottom:30px;
}



.back-btn {
	margin-left:35px;
}

.back-btn .btn {
	background-color:#666;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	color: #fff;
	width:230px;
	height:50px;
	padding-top:10px;
	text-decoration: none;
    text-align: center;
    display: block; 
}

.back-btn .btn h4 {
	color: #fff;
}



/* その他のページのコンテンツ部分 */

.others {
	background-color:#F8F6E3;
}

.others-in {
	margin:auto;
	width:900px;
	padding-top:120px;
	padding-bottom:70px;
}


/*　ご注文　*/

.order-btn{
    width: 650px;
    margin: auto;
}

.order-btn-in{
    position: relative;
    width: 245px;
    float: left;
    margin: 0 40px;
    text-align: center;
    background-color: #fff;
    border: solid 3px #E50044;
    border-radius: 10px;
    overflow: hidden;
    z-index: 0;
}

.order-btn-in a{
    display: block;
    font-size: 120%;
    padding: 10px 0;
    font-weight: bold;
    color: #E50044;
}

.order-btn-in a span{
    font-size: 80%
}

.order-btn-in:before{
    position: absolute;
    content: "";
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 0;
    left: -100%;
    background-color: #ffcccc;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.order-btn-in a:hover{
    color: #39F;
}

.order-btn-in:hover:before{
    left: 0;
}

.order_flow{
    clear: both;
}

.order_flow_title{
    text-align: center;
    padding-top: 70px;
    padding-bottom: 60px;
}

.order_flow_subtitle{
    width: 650px;
    text-align: center;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
    background-color: #E50044;
    border-radius: 20px;
    color: #fff;
    padding: 5px 0;
}

.order_flow_subtitle h4 span{
    font-size: 120%;
    letter-spacing: 3px;
    color: #fff;
}

.order_flow_internet{
    background-image: url(../image/order_flow_internet.gif);
    background-repeat: no-repeat;
    width: 932px;
    height: 192px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
}

.order_flow_fax{
    background-image: url(../image/order_flow_fax.gif);
    background-repeat: no-repeat;
    width: 692px;
    height: 193px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
}

.order_flow_text0{
    padding-top: 25px;
    display: flex;
    justify-content: space-between;
}

.order_flow_text1{
    width: 195px;
    text-align: center;
}

.order_flow_append{
    margin: auto;
    width: 730px;
}


/* よくあるご質問 */


.faq-menu {
	margin:auto;
	width:850px;
	overflow:hidden;
}

.faq-menu-left {
	float:left;
}

.faq-menu-right {
	float:left;
	margin-left:50px;
}

.faq-menu-back {
	background-color:#FFF;
	width:400px;
	height:40px;
	border:solid 3px #E50044;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}

.faq-menu-back a {
	display:block;
	width:400px;
	height:40px;
}

.faq-menu ul li {
	padding-left:10px;
	padding-top:1px;
	margin-bottom:20px;
	overflow:hidden;
}

.faq-menu ul li img {
	float:left;
	width:18px;
	margin-top:7px;
}

.faq-menu ul li h4 {
	float:left;
	margin-left:7px;
}

#faq01, #faq02, #faq03, #faq04, #faq05 {
	padding-top:150px;
	margin-top:-150px;
}

.faq-category {
	margin: auto;
	width: 850px;
	margin-top:50px;
    padding-left: 10px;
}

.faq-box {
    margin: auto;
	margin-top:20px;
    padding: 0;
    width: 850px;
}

    /*ラベル*/
.faq-box label {
    display: block;
    margin: 1.5px 0;
    padding-left:10px;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.5s;
}

.label-back {
	background-color:#FFF;
	border:solid 1px #C7BB6A;
	border-radius: 5px;
    -webkit-border-radius: 5px;/* for Safari and Chrome 対応*/
    -moz-border-radius: 5px;/* for Firefox 対応*/
	padding:20px;
}

.faq-label-space {
	overflow:hidden;
}

.faq-label {
	float:left;
	width:750px;
	overflow:hidden;
}

.faq-yaji {
	float:right;
}

.faq-label img {
	float:left;
}

.faq-label h7 {
	float:left;
	margin-left:10px;
}


    /*ラベルホバー時*/
.faq-box label:hover {
	color:#E50044;
}

    /*チェックは隠す*/
.faq-box input {
    display: none;
}

    /*中身を非表示にしておく*/
.faq-box .faq-show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
	overflow:hidden;
}

    /*クリックで中身表示*/
.cssqa:checked + .faq-show {
    height: auto;
	padding-top:10px;
    padding-left:10px;
    opacity: 1;
	overflow:hidden;
}

.faq-show .faq-a {
	float:left;
}

.faq-show .faq-show-in {
	float:left;
	width:670px;
	padding-left:10px;
}

.faq-img {
	padding-top:10px;
	width:670px;
}

.faq-img-s {
	padding:20px;
	width:630px;
	text-align:center;
}

.faq-img-s img {
	width:350px;
}

.faq-text-left-space {
	padding-left:20px;
}

.faq-show-in p {
	overflow:hidden;
}

.line-break01 {
	float:left;
}

.line-break02 {
	float:left;
	width:620px;
}

.faq-to-top{
    width: 850px;
    margin: auto;
    text-align: right;
    margin-top: 10px;
}

.faq-to-top a:hover{
    text-decoration: underline;
    color:#E50044;
}

.faq-show-in_link:hover{
	color:#39F;
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
	cursor: pointer;
}


/* 先生デジタル応援団 */

.assist{
    background-color: #fbe5ff;
}

.assist_intro{
    margin: 0 auto;
    width: 700px;
    text-align: center;
}

.assist_support_outline{
    background-image: url(../image/assist_support_outline.png);
    background-repeat:no-repeat;
    width: 802px;
    height: 530px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
}

.assist_outline_caption_wrap{
    width: 740px;
    margin: auto;
    display: flex;
    justify-content: space-around;
}

.assist_outline_caption_in{
    width: 225px;
    margin-top: 295px;
}

.assist_outline_caption_in h2{
    text-align: center;
}

.assist_outline_caption_in p{
    padding-top: 10px;
}

.assist_cases{
    width: 660px;
    margin: 0 auto;
}

.assist_cases_title{
    width: 650px;
    text-align: center;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    background-color: #a55993;
    border-radius: 20px;
    color: #fff;
    padding: 5px 0;
}

.assist_cases_title span{
    color: #ffd700;
}

.assist_case_title_wrap{
    padding-left: 140px;
    padding-top: 65px;
}

.assist_case_title_wrap img{
    float: left;
}

.assist_case_titleBig{
    font-weight: bold;
    font-size: 190%;
    margin-left: 120px;
}

.assist_case_titleSmall{
    font-weight: bold;
    font-size: 140%;
    margin-left: 120px;
    line-height: 20px;
}

.assist_case1{
    background-image: url(../image/assist_case1.png);
    background-repeat:no-repeat;
    width: 652px;
    height: 576px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
}

.assist_case2{
    background-image: url(../image/assist_case2.png);
    background-repeat:no-repeat;
    width: 652px;
    height: 576px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}

.assist_case3{
    background-image: url(../image/assist_case3.png);
    background-repeat:no-repeat;
    width: 652px;
    height: 576px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}

.assist_case_expTop{
    text-align: center;
    padding-top: 33px;
}

.assist_case1_caption_wrap,
.assist_case3_caption_wrap{
    width: 410px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding-top: 240px;
}

.assist_case2_caption_in{
    text-align: center;
    padding-top: 240px;
}

.assist_case_expBottom{
    text-align: center;
    padding-top: 8px;
}

.assist_case_expBottom p{
    font-weight: bold;
    font-size: 110%;
    line-height: 25px;
    color: #a55993;
}


/* 電話お問い合わせフォーム */


#formspace {
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	width:900px;
	overflow:hidden;
}

#formspace-in01 {
	margin-bottom:50px;
	border:2px solid #000;
}

.formbar02 {
	margin-bottom:-1px;
	overflow:hidden;
}

.formbar03 {
	margin-bottom:0px;
	overflow:hidden;
}

.formtitle01 h2 {
	display:inline-block;
}

.formtitle01 h7 {
	display:inline-block;
}

.formtitle01 h9 {
	display:inline-block;
}

.formtitle01 p {
	display:inline-block;
}

.formtitle02 {
	margin-top:-7px;
}

.formleft {
	float:left;
	padding-top:33px;
	padding-bottom:20px;
	padding-left:30px;
	padding-right: 10px;
	width:297px;
	height:92px;
	border:1px solid #999;
	border-left:none;
}

.formright {
	float:left;
	padding-top:30px;
	padding-bottom:30px;
	padding-left:30px;
	width:600px;
    height:92px;
	margin-left:-1px;
	border:1px solid #999;
	border-right:none;
}

.formleft02 {
	float:left;
	padding-top:33px;
	padding-bottom:30px;
	padding-left:30px;
	padding-right:20px;
	width:297px;
	height:450px;
	border:1px solid #999;
	border-left:none;
}

.formright02 {
	float:left;
	padding-top:30px;
	padding-bottom:30px;
	padding-left:30px;
	width:600px;
	height:450px;
	margin-left:-1px;
	border:1px solid #999;
	border-right:none;
}

.formleft03 {
	float:left;
	padding-top:50px;
	padding-bottom:30px;
	padding-left:30px;
	width:297px;
}

.formright03 {
	float:left;
	padding-top:30px;
	padding-bottom:30px;
	padding-left:30px;
	padding-right:30px;
	width:600px;
	margin-left:-1px;
	border:1px solid #999;
	border-bottom:none;
}

.formright03 h6 {
	margin-top:10px;
	font-weight:normal;
}

textarea {
	width:90%;
	height:350px;
	font-size:16px;
}

input[type=text]{
	height:35px;
}

.short {
	width:50px;
	font-size:16px;
	text-align:center;
}

.middle {
	width:70px;
	font-size:16px;
	text-align:right;
}

.semilong {
	width:200px;
	font-size:16px;
	text-align:right;
}

.semilong-left {
	width:200px;
	font-size:16px;
}

.long {
	width:70%;
	font-size:16px;
}

.long_name {
	width:35%;
	font-size:16px;
	margin-right: 5px;
}

select {
	width:25%;
	height:35px;
	font-size:16px;
}

.form-btn {
	display:inline-block;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	margin-right:20px;
	background:#FFB400;
	color: #fff;
	width:250px;
	font-size:20px;
	font-weight:bold;
	margin:30px;
	margin-top:0px;
	margin-bottom:10px;
	padding-top:13px;
	padding-bottom:10px;
	text-decoration: none;  
    text-align: center;
	letter-spacing:1px;
}

.form-btn:hover {
	opacity:0.8;
}

.form-btn01:hover {
	opacity:0.8;
}

.form-btn01 {
	display:inline-block;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	margin-right:20px;
	background:#999;
	color: #fff;
	width:250px;
	font-size:20px;
	font-weight:bold;
	margin:30px;
	margin-top:0px;
	margin-bottom:10px;
	padding-top:13px;
	padding-bottom:10px;
	text-decoration: none;  
    text-align: center;
	letter-spacing:1px;
}

.info-box {
	margin:auto;
	width:800px;
	padding:20px;
	text-align:center;
	overflow:hidden;
}

.info-box ul {
	margin:auto;
	margin-top:20px;
	width:340px;
}

.info-box ul li {
	float:left;
	margin-left:20px;
	margin-right:20px;
	text-align:left;
}

.trial-version {
	height: 160px;
}

.online-instruction{
	height: 140px;
}

/* The container */
.container {
	display: block;
	position: relative;
	padding-left: 30px;
	cursor: pointer;
	font-size: 16px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: fit-content;
  }
  
  /* Hide the browser's default checkbox */
  .container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
  }
  
  /* Create a custom checkbox */
  .checkmark {
	position: absolute;
	top: 3px;
	left: 0;
	height: 17px;
    width: 17px;
    background-color: white;
    border: 1px solid;
  }
  
  /* When the checkbox is checked, add a blue background */
  .container input:checked ~ .checkmark {
	background-color: #2196F3;
  }
  
  /* Create the checkmark/indicator (hidden when not checked) */
  .checkmark:after {
	content: "";
	position: absolute;
	display: none;
  }
  
  /* Show the checkmark when checked */
  .container input:checked ~ .checkmark:after {
	display: block;
  }
  
  /* Style the checkmark/indicator */
  .container .checkmark:after {
	left: 5px;
    top: 0px;
    width: 3px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
  }

  .contents-inquiry {
	  width: 50%;
	  margin-bottom: 5px;
  }


/*　私たちの理念　*/

.ideal{
    background-image: url(../image/ideal_back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.ideal_wrap{
    background: rgba(255,255,255,0.3);
}

.ideal_subtitle{
    text-align: center;
    margin-bottom: 40px;
}

.ideal_subtitle p{
    font-size: 28px;
    font-weight: bold;
    color: #00008b;
}

.ideal_text{
    text-align: center;
    margin-bottom: 40px;
}

.ideal_text h4{
    line-height: 1.8em;
}

.ideal_guide_to_dds{
    text-align: center;
    margin-bottom: 130px;
}

.ideal_guide_to_dds a{
    color:#00008b;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
}

.ideal_guide_to_dds a:hover{
    text-decoration: underline;
}



/*　プライバシーポリシー　*/

.privacy_wrapper{
    width: 720px;
    margin: auto;
}

.privacy_section_title{
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: dotted 2px #B7B7B7;
}

.privacy_wrapper p{
    margin-bottom: 25px;
}

.privacy_noListStyle{
    margin-left: 20px;
    margin-bottom: 25px;
    font-size: 15px;
}

.privacy_contact{
    padding-top: 50px;
}


/* フッター */


footer {
	background-color:#FCEAE5;
	
}

#footerAreain {
	margin:auto;
	width:960px;
	overflow:hidden;
}

#footlink {
	float:left;
	padding:20px;
	padding-left:50px;
}

#footlink .footlink00 {
	margin-bottom:10px;
	width:300px;
}

.footer-arrow {
    float:left;
    width:18px;
    margin-top:4px;
    margin-right:5px;
}

#footcom {
	float:right;
	padding:20px;
	padding-right:50px;
	text-align:right;
}

.footcom01 h5 {
	margin-top:-8px;
}

.tel {
	margin-right:5px;
	font-size: 24px;
}

.footcom01 h2 {
	margin-top:-7px;
}

#copy-in {
	text-align:center;
	margin-left:auto;
	margin-right:auto;
	padding-bottom:20px;
	width:370px;
}

.sp-visible{
	display: none;
}

.tabletSP-visible{
	display: none;
}

/*----------------共通-------------------*/

h1 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 11px;
}

h2 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 16px;
	font-weight:bold;
	letter-spacing:1px;
}

h3 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 12px;
	font-weight:normal;
}

h4 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 20px;
}

h5 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 37px;
	font-weight:bold;
	letter-spacing:1px;
}

h6 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 35px;
	font-weight:normal;
}

h7 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 18px;
	font-weight:bold;
	letter-spacing:1px;
}


h9 {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 12px;
}


p {
	font-family: 'Helvetica Neue','Helvetica','Arial','メイリオ', Meiryo,YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 15px;
	font-weight:500;
}

/*-------------tablet width 601-750px----------------*/

@media screen and (min-width:601px) and (max-width:750px) {
	.faq-label img#multiple_lines{
		margin-bottom: 60px;
	}
}

/*-------------tablet width 601-960px----------------*/

@media screen and (min-width:601px) and (max-width:960px) {
	.pc-visible{
		display: none;
	}

	.PCtablet-visible{
		display: block;
	}

	.tabletSP-visible{
		display: block;
	}

	.logo{
		padding-top: 90px;
	}

	.digi-spt{
		top: 380px;
		text-align: right;
	}

	.digi-spt-in img{
		max-width: 80%;
	}

	.ask-float{
		z-index: 999;
	}

	.headlink ul{
		display: flex;
		justify-content: space-between;
		width: 90%;
	}

	.headlink ul li{
		float: none;
		margin-left: 0;
		margin-right: 0;
	}

	.headlink ul li h2{
		font-size: 1.7vw;
	}

	.login-menu{
		width:100%;
		position: relative;
		z-index: 100;
	}

	.border-radius{
		padding: 10px 20px;
		width: 100%;
		height: 100%;
	}

	.login-btn-in{
		position: relative;
		background-image: none;
		width: 100%;
	}

	.login-btn-in::after{
		content: "";
		display: block;
		width: 100%;
		height: 120%;
		border: solid 2px #E50044;
		border-radius: 8px;
		position: absolute;
		top: -35%;
		z-index: -1;
		background-color: #fff;
		box-sizing: border-box;
	}

	.login-btn-in-btn{
		width: 90%;
	}

	.point00{
		width: 100%;
	}

	.point03sub01{
		display: flex;
		justify-content: space-around;
		width: 90%;
	}

	.point03sub-A{
		width: 50%;
	}

	.point03sub-title{
		margin-top: 10px;
	}

	.point03subA-title{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-top: 10px;
	}

	.point03subB-title{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-top: 10px;
	}

	.point03subA-text{
		width: 90%;
		margin-bottom: 12px;
	}

	.point03sub02{
		display: flex;
		justify-content: space-around;
		width: 90%;
	}

	.point03sub-B{
		width: 33%;
	}

	.point03subB-text{
		padding: 0;
		width: 90%;
		margin: auto;
		margin-bottom: 12px;
	}

	.point03sub01{
		background-image: none;
		width: 90%;
		height: 100%;
		padding-top: 0;
		border: 2px solid #ED6C00;
		border-radius: 8px;
		background-color: #fff;
		position: relative;
		overflow: visible;
		margin-bottom: 80px;
	}

	.point03sub01::before{
		content: "安心";
		display: block;
		width: 90px;
		height: 45px;
		border-radius: 45px 45px 0 0;
		background: #ED6C00;
		margin: 0 auto;
		position: absolute;
		top: -45px;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		color: #fff;
		line-height: 2;
		font-size: 150%;
		font-weight: bold;
	}

	.point03sub-A-rightline::after{
		content: "";
		display: block;
		width: 0%;
		height: 80%;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: 11px;
		border-right: dotted 2px #ED6C00;
	}

	.point03sub02{
		background-image: none;
		width: 90%;
		height: 100%;
		padding-top: 0;
		border: 2px solid #1EAA39;
		border-radius: 8px;
		background-color: #fff;
		position: relative;
		overflow: visible;
	}

	.point03sub02::before{
		content: "便利";
		display: block;
		width: 90px;
		height: 45px;
		border-radius: 45px 45px 0 0;
		background: #1EAA39;
		margin: 0 auto;
		position: absolute;
		top: -45px;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		color: #fff;
		line-height: 2;
		font-size: 150%;
		font-weight: bold;
	}

	.point03sub-B-rightline01::after{
		content: "";
		display: block;
		width: 0%;
		height: 85%;
		position: absolute;
		left: 32.5%;
		transform: translateX(-50%);
		top: 10px;
		border-right: dotted 2px #1EAA39;
	}

	.point03sub-B-rightline02::after{
		content: "";
		display: block;
		width: 0%;
		height: 85%;
		position: absolute;
		left: 66%;
		transform: translateX(-50%);
		top: 10px;
		border-right: dotted 2px #1EAA39;
	}

	.point_support{
		width: 80%;
	}

	.stream-in{
		width: 100%;
	}

	.stream-left{
		width: 60%;
	}

	.stream-right{
		width: 40%;
	}

	.stream-left-in img{
		width: 86%;
	}

	.stream-right-in{
		width: 90%;
	}

	.stream-yaji-right-margin{
		padding-top: 70px;
	}

	.stream-right-margin{
		margin-bottom: 20px;
	}

	.stream-sub01{
		width: 100%;
		background-size: contain;
	}

	.stream-sub01 p{
		width: 95%;
		font-size: min(1.83vw,15px);
		max-width: 250px;
	}

	.stream-left-in iframe{
		width: 90%;
	}

	.stream-sub02{
		width: 100%;
		background-size: contain;
	}

	.stream-sub02 p{
		width: 95%;
		font-size: min(1.83vw,15px);
		max-width: 240px;
	}

	.price01{
		width: 70px;
		background-size: 65px 110px;
		margin-left: 15px;
		padding-left: 6px;
		writing-mode: vertical-lr;
		line-height: 20px;
		padding-top: 20px;
	}

	.price-sheet{
		width: 100%;
	}
	
	.price02{
		margin-left: 0px;
	}
	
	.price02 ul li{
		margin-bottom: 44px;
	}

	.price03{
		background-image: none;
		margin-top: 0;
		margin-left: 6px;
		width: 35%;
		position: relative;
		z-index: 99;
	}

	.price03::after{
		content: "";
		display: block;
		position: absolute;
		width: 90%;
		height: 290px;
		border: solid #E50044;
		border-radius: 5px;
		top: 0px;
		left: 8px;
		border-top: solid 50px #E50044;
		z-index: -1;
	}

	/*
	.price03-title{
		margin: 3px;
	}

	.price03-title h4{
		display: flex;
		flex-direction: column;
		font-size: 16px;
	}
	*/

	.price03 ul{
		margin-top: 30px;
	}

	.price03 ul li{
		margin-bottom: 32px;
	}

	.price-note{
		width: 100%;
	}

	.price-license{
		overflow: auto;
		width: 90%;
	}

	.price-license01{
		margin: 0;
		margin-top: 30px;
		float: none;
	}

	.price-license01-title{
		width: 100%;
	}

	.price-license table{
		width: 100%;
	}

	.price-subtext{
		margin: 15px 0;
	}

	.env{
		width: 100%;
	}

	.env table{
		width: 90%;
		margin: auto;
	}

	.env-width01{
		width: 40%;
	}

	.env-width02{
		width: 24%;
	}

	.env-width03{
		width: 35%;
	}

	.env table td{
		padding: 30px 10px;
	}

	.env-subtext{
		margin: 15px auto;
		width: 90%;
	}

	/* ----index.html 以外---- */
	.others-in{
		width: 100%;
	}

	.order-btn{
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.order-btn-in{
		width: 35%;
		max-width: 245px;
		margin: 0px 30px;
	}

	.order_flow_subtitle{
		width: 85%;
	}

	.order_flow_internet{
		display: none;
	}

	.order_flow_fax{
		display: none;
	}

	.order_flow_text0{
		padding-top: 0;
		margin-bottom: 60px;
		justify-content: center;
	}

	.order_flow_text1 img{
		margin-bottom: 10px;
	}

	.order_flow_yaji{
		margin-top: 20px;
	}

	.order_flow_yaji img{
		transform: rotate(-90deg);
		width: 90%;
	}

	.order_flow_append{
		width: 85%;
	}

	.faq-menu{
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.faq-menu-back{
		width: 100%;
	}

	.faq-menu-back a{
		width: 100%;
	}

	.faq-menu ul li h4{
		font-size: 18px;
		padding-right: 10px;
	}

	.faq-category{
		width: 100%;
	}

	.faq-box{
		width: 95%;
	}

	.faq-label{
		width: 95%;
	}

	.faq-label img{
		margin-right: 10px;
	}

	.faq-label h7{
		float: none;
		margin-left: 0px;
	}

	.faq-show .faq-show-in{
		width: 90%;
	}

	.faq-to-top{
		width: 100%;
	}

	.faq-to-top h2{
		padding-right: 20px;
	}

	.faq-img{
		width: 100%;
	}

	.faq-img img{
		width: 100%;
	}

	.faq-yaji-img img{
		width: auto;
	}

	.faq-text-left-space{
		padding-left: 6px;
	}

	.line-break02{
		width: 93%;
	}

	#ikoi-twitter{
		z-index: 99;
	}

	#ikoi-twitter img{
		width: 120px;
	}

	.assist_intro{
		width: 100%;
	}

	.assist_intro_img img{
		width: 80%;
	}

	.assist_support_outline_tabletSP{
		background-color: #ffffff;
		width: 80%;
		margin: 0 auto;
		margin-top: 30px;
		border: solid 2px #ce93bf;
		border-radius: 6px;
	}

	.assist_support_outline_title_tabletSP{
		color: #ffffff;
		background-color: #ce93bf;
		border-radius: 2px 2px 0 0;
		padding: 5px 0px;
		text-align: center;
	}

	.assist_support_outline_title_tabletSP h4 span{
		font-size: 14px;
	}

	.assist_outline_in_tabletSP{
		display: flex;
		justify-content: center;
	}

	.assist_outline_in_tabletSP img{
		width: 25%;
		margin: 3%;
	}

	.assist_outline_text_tabletSP{
		width: 60%;
		margin: 3%;
	}

	.assist_outline_text_tabletSP h2{
		margin-bottom: 5px;
	}

	.assist_outline_text_tabletSP h2:last-child{
		text-align: left;
		padding-top: 20px;
	}

	.assist_outline_yaji{
		width: 20px;
		margin: 0 auto;
	}

	.assist_cases{
		width: 100%;
	}

	.assist_cases_title{
		width: 80%;
	}

	.assist_case1, .assist_case2, .assist_case3{
		height: auto;
		background-image: none;
		width: 80%;
		border: solid 2px #a55993;
		border-radius: 6px;
		position: relative; /*case1-3 の半丸を表示させるため*/
		margin-top: 80px;
		z-index: 1;
	}

	.assist_case1::before{
		content: "CASE1";
		display: block;
		width: 250px;
		height: 125px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 25px;
		font-weight: bold;
		padding-top: 10px;
		color: #004ea2;
		border-radius: 125px 125px 0 0;
		border: solid 2px #a55993;
		top: -45px;
		z-index: -1;
	}

	.assist_case2::before{
		content: "CASE2";
		display: block;
		width: 250px;
		height: 125px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 25px;
		font-weight: bold;
		padding-top: 10px;
		color: #004ea2;
		border-radius: 125px 125px 0 0;
		border: solid 2px #a55993;
		top: -45px;
		z-index: -1;
	}

	.assist_case3::before{
		content: "CASE3";
		display: block;
		width: 250px;
		height: 125px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 25px;
		font-weight: bold;
		padding-top: 10px;
		color: #004ea2;
		border-radius: 125px 125px 0 0;
		border: solid 2px #a55993;
		top: -45px;
		z-index: -1;
	}

	.assist_case_title_wrap{
		padding: 20px 0 15px;
		text-align: center;
		background-color: #ffffff;
		border-radius: 6px 6px 0 0;
	}

	.assist_case_title_wrap img{
		float: none;
	}

	.assist_case_titleBig{
		margin: 0;
	}

	.assist_case_titleSmall{
		margin: 0;
	}

	.assist_case_expTop{
		background-color: #ffffff;
		padding-top: 0;
		padding-bottom: 15px;
	}

	.assist_case_expTop::before{
		content: url(../image/assist_case_wavyline.svg);
		display: block;
		margin: auto;
		width: 90%;
		padding-bottom: 10px;
	}

	.assist_case_wrap{
		background-color: #f4ebf4;
	}

	.assist_case_content_wrap{
		width: 100%;
		padding-top: 20px;
	}

	.assist_case_title{
		display: flex;
		justify-content: center;
		align-items: center;
		padding-bottom: 15px;
	}

	.assist_case_title p{
		font-weight: bold;
		color: #ffff00;
		line-height: 15px;
		font-size: 12px;
		width: 55px;
		height: 55px;
		border-radius: 50%;
		background-color: #a55993;
		padding-top: 12px;
		margin-right: 10px;
		text-align: center;
		transform:rotate(-20deg);
	}

	.assist_case_title h4{
		color: #a55993;
		font-size: 25px;
	}

	.assist_case_caption_in_wrap{
		display: flex;
		justify-content: center;
		align-items: baseline;
	}

	.assist_case3_caption_in_wrap{
		display: flex;
		justify-content: space-evenly;
	}

	.assist_case_caption_in{
		width: 35%;
		text-align: center;
	}

	.assist_case_caption_in img{
		width: 160px;
	}

	.assist_case_caption_in p{
		text-align: center;
		padding-top: 10px;
	}

	.assist_case_caption_out p{
		text-align: center;
		padding-top: 10px;
	}

	.assist_case_yaji{
		width: 20%;
		align-self: center;
	}

	.assist_case_expBottom{
		background-color: #f4ebf4;
		border-radius: 0 0 6px 6px;
		padding-bottom: 20px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.form_top_explanation{
		padding: 0px 20px;
	}

	#formspace{
		width: 100%;
		padding: 0px 20px;
	}

	.formleft{
		width: 30%;
		padding-left: 10px;
	}

	.formleft02{
		width: 30%;
		padding-left: 10px;
	}

	.formright{
		width: 70%;
		padding-left: 20px;
	}
	
	.formright02{
		width: 70%;
		padding-left: 20px;
		padding-top: 30px;
	}

	.form_annot{
		font-size: 14px;
	}

	.trial-version{
		padding-top: 10px;
	}

	.online-instruction{
		padding-top: 10px;
	}

	.info-box{
		width: 100%;
	}

	.ideal{
		background-position: bottom;
	}

	.privacy_wrapper{
		width: 100%;
	}

	.privacy_wrapper{
		width: 100%;
		padding: 0px 40px;
	}

	/* ----footer---- */
	#footerAreain{
		width: 100%;
	}

	#copy-in{
		width: 100%;
	}
}


/*--------------smart phone width < 600px---------------*/
@media screen and (max-width:600px) {
	.headlink{
		display: none;
	}
	
	.pc-visible{
		display: none;
	}

	.PCtablet-visible{
		display: none;
	}

	.sp-visible{
		display: block;
	}

	.tabletSP-visible{
		display: block;
	}

	/*--TOP MENU for sp--*/
	#sp-gnav{
		display: block;
		position:fixed;
		z-index: 999;
		top:-120%; /*スタート位置*/
		left:0;
		width:100%;
		height: 80vh; /*高さ*/
		background:#f05784;
		transition: all 0.6s;
	}
	
	#sp-gnav.panelactive{
		top: 0; /*スクリプトでactiveクラスがついたら位置を0に*/
	}

	/*---ナビの数が増えた場合縦スクロール
	#sp-gnav.panelactive #sp-gnav-list{
		position: fixed;
		z-index: 999;
		width: 100%;
		height: 80vh;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	------*/

	#sp-gnav ul {
		position: absolute;
		z-index: 999;
		top:54%;
		left:50%;
		transform: translate(-50%,-50%);
		width: 60%;
	}
	
	#sp-gnav li{
		list-style: none;
		text-align: center;		
	}

	#sp-gnav li a{
		color: #fff;
		text-decoration: none;
		padding: 10px;
		display: block;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		font-weight: bold;
	}

	#sp-gnav ul .menu_underline{
		border-bottom: solid #fff 1px;
	}

	#sp-gnav ul .menu_twitter{
		padding-top: 5px;
	}

	#sp-gnav ul .menu_twitter img{
		width: 40px;
	}

	.sp-gnav-openbtn{
		position:fixed;
		z-index: 9999;
		top: 3px;
		left: 5px;
		cursor: pointer;
		width: 60px;
		height: 60px;
	}
	
	.sp-gnav-openbtn span{ /*--三を×にする--*/
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 3px;
		border-radius: 2px;
		background-color: #e50044;
		width: 45%;
	}

	.sp-gnav-openbtn span:nth-of-type(1) {
		top: 15px;	
	}

	.sp-gnav-openbtn span:nth-of-type(2) {
		top: 23px;
	}

	.sp-gnav-openbtn span:nth-of-type(3) {
		top: 31px;
	}

	.sp-gnav-openbtn.active span:nth-of-type(1) {
		top: 18px;
		left: 14px;
		transform: translateY(6px) rotate(-45deg);
		width: 40%;
	}

	.sp-gnav-openbtn.active span:nth-of-type(2) {
		opacity: 0;
	}

	.sp-gnav-openbtn.active span:nth-of-type(3){
		top: 30px;
		left: 14px;
		transform: translateY(-6px) rotate(45deg);
		width: 40%;
	}
	/*--TOP MENU for sp ここまで--*/

	.headlink-small{
		display: block;
		position: fixed;
		z-index: 999;
		background-color: rgba(255,255,255,0.9);
		width: 100%;
		height: 55px;
	}
	
	.headlink-small ul {
		display: flex;
		justify-content: flex-end;
		padding-top:12px;
	}
	
	.headlink-small ul li {
		margin-right: 15px;
	}

	.headlink-small ul li h2 {
		line-height:110%;
	}

	.headlink-small ul .heimen_icon img{
		width: 150px;
		padding-top: 2px;
	}

	.login-menu{
		width: 110px;
		margin-top: 0;
	}

	.login-menu .border-radius{
		width: 110px;
		margin: 0;
		height: 30px;
		padding-top: 8px;
	}

	.login-btn{
		padding-left: 12px;
		text-align: center;
	}

	.login-btn h2{
		font-size: 15px;
	}

	.login-btn img{
		width: 15px;
	}

	.login-btn-in{
		background-image: none;
		width: 110px;
		position: relative;
	}

	.login-btn-in::after{
		content: "";
		display: block;
		width: 100%;
		height: 115%;
		border: solid 2px #E50044;
		border-radius: 8px;
		position: absolute;
		top: -35%;
		z-index: -1;
		background-color: #fff;
		box-sizing: border-box;
	}

	.login-btn-in h2{
		text-align: center;
		font-size: 12px;
	}

	.login-btn-in-btn{
		width: 100px;
		margin-top: 15px;
		padding-top: 10px;
	}

	.logo{
		width: 100%;
		padding-top: 120px;
	}

	.logo h1{
		text-align: center;
	}

	.logo h1 img{
		width: 100%;
		max-width: 474px;
	}
	
	#latest_news{
		display: none;
	}

	#sp-latest_news{
		display: block;
		background-color: #fff;
	}

	.sp-latest_news_title{
		font-size: 25px;
		padding: 20px 0px 15px;
		text-align: center;
	}

	.sp-latest_news_inner{
		width: 85%;
		margin: 0 auto;
	}

	.sp-latest_news_date_wrap{
		display: flex;
		padding-bottom: 6px
	}

	.sp-latest_news_date{
		font-size: 12px;
		font-weight: bold;
		padding-bottom: 5px;
	}

	.sp-latest_news_content{
		font-size: 12px;
		font-weight: bold;
		padding-bottom: 2px;
		margin-bottom: 20px;
		border-bottom: 2px dotted #E50044;
	}
	
	.sp-past_news{
		margin: 0 auto;
		width: 85%;
		font-size: 12px;
		font-weight: bold;
		padding-bottom: 2px;
		margin-bottom: 20px;
		border-bottom: 2px dotted #E50044;
		text-align: center;
	}

	.digi-spt{
		text-align: right;
		top: 380px;
	}

	.digi-spt-in img{
		max-width: 70%;
	}

	.ask-float{
		z-index: 999;
	}

	.ask-btn{
		width: 63px;
		height: 70px;
		background-size: 100%;
	}

	.concept img{
		width: 100%;
	}

	.concept h4{
		font-size: min(3.85vw,16px);
	}

	#point{
		width: 100%
	}

	.point-in{
		background-size: 100%;
		background-repeat: repeat;
	}

	.point00{
		width: 100%;
	}

	.topics-title h5{
		font-size: min(6.41vw,35px);
	}

	.point00 .circle img{
		width: 100%;
	}

	.topics-text h2{
		font-size: min(3.85vw,16px);
		letter-spacing: 0px;
		margin: 4px 5px;
	}

	.point03sub01{
		background-image: none;
		width: 90%;
		height: 100%;
		padding-top: 0;
		border: 2px solid #ED6C00;
		border-radius: 5px;
		background-color: #fff;
		position: relative;
		overflow: visible;
	}

	.point03sub01::before{
		content: "安心";
		display: block;
		width: 70px;
		height: 35px;
		border-radius: 35px 35px 0 0;
		background: #ED6C00;
		margin: 0 auto;
		position: absolute;
		top: -35px;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		color: #fff;
		line-height: 2;
		font-weight: bold;
	}

	.point03sub-A-underline::after{
		content: "";
		display: block;
		width: 90%;
		border-bottom: 2px dotted #ED6C00;
		margin: 0 auto;
	}

	.point03sub-A{
		float: none;
		width: 100%;
	}

	.point03subA-title{
		margin-top: 8px;
	}

	.point03sub-title{
		margin-top: 8px;
	}

	.point03subA-text{
		width: 90%;
		margin-bottom: 8px;
	}

	.point03sub02{
		background-image: none;
		width: 90%;
		height: 100%;
		padding-top: 0;
		margin-top: 60px;
		border: 2px solid #1EAA39;
		border-radius: 5px;
		background-color: #fff;
		position: relative;
		overflow: visible;
	}

	.point03sub02::before{
		content: "便利";
		display: block;
		width: 70px;
		height: 35px;
		border-radius: 35px 35px 0 0;
		background: #1EAA39;
		margin: 0 auto;
		position: absolute;
		top: -35px;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		color: #fff;
		line-height: 2;
		font-weight: bold;
	}

	.point03sub-B-underline::after{
		content: "";
		display: block;
		width: 90%;
		border-bottom: 2px dotted #1EAA39;
		margin: 0 auto;
	}
	
	.point03sub-B{
		float: none;
		width: 100%;
	}

	.point03subB-title{
		margin-top: 8px;
	}

	.point03subB-text{
		margin: auto;
		padding: 0;
		width: 90%;
		margin-bottom: 8px;
	}

	.point_support{
		width: 90%;
		padding: 10px 0px 10px;
	}

	.point_support .topics-title{
		margin-bottom: 15px;
	}

	.point_support .topics-text{
		margin-top: 15px;
	}

	.point_support h5{
		line-height: 30px;
	}

	.stream-in{
		width: 100%;
	}

	.stream-flex{
		display: flex;
		flex-flow: column;
		flex-direction: column-reverse;
	}
	
	.stream-topic img{
		width: 100%;
	}

	.stream-left{
		width: 100%;
	}

	.stream-left-in img{
		width: 100%;
	}

	.stream-left{
		float: none;
	}

	.stream-right{
		float: none;
		width: 100%;
	}

	.stream-right-text h4{
		text-align: center;
	}

	.stream-right-in, .stream-sp-text{
		width: auto;
		margin: 0px 10px 15px 10px;
	}

	.stream-sub01{
		width: auto;
		background-position: center;
		padding-left: 0;
		margin-top: 20px;
	}

	.stream-sub02{
		width: auto;
		background-position: center;
		padding-left: 0;
		margin-top: 20px;
	}

	.stream-sub-title{
		width: 285px;
		margin: 0 auto;
		padding-left: 20px;
	}
	
	.stream-sub01 p{
		width: 285px;
		margin: 0 auto;
		padding-left: 20px;
		padding-right: 20px;
	}

	.stream-sub02 p{
		width: 285px;
		margin: 0 auto;
		padding-left: 20px;
		padding-right: 20px;
	}

	.stream-left-in iframe{
		width: 90%;
	}

	.price-sheet{
		width: 100%;
	}

	.price01{
		width: 60px;
		background-size: 55px 110px;
		margin-left: 5px;
		padding-left: 5px;
		writing-mode: vertical-lr;
		line-height: 15px;
	}

	.price01 h2{
		font-size: 12px;
	}

	.price02{
		margin-left: 0px;
	}

	.price02 p{
		font-size: 12px;
	}

	.price02 ul li{
		margin-bottom: 51px;
	}

	.price03{
		background-image: none;
		margin-top: 0;
		margin-left: 6px;
		width: 30%;
		position: relative;
		z-index: 100;
	}

	.price03::after{
		content: "";
		display: block;
		position: absolute;
		width: 90%;
		height: 290px;
		border: solid #E50044;
		border-radius: 5px;
		top: 0px;
		left: 2px;
		border-top: solid 50px #E50044;
		z-index: -1;
	}

	.price03-title{
		margin: 3px;
	}

	.price03-title h4{
		display: flex;
		flex-direction: column;
		font-size: 14px;
	}

	.price03 p{
		font-size: 12px;
	}

	.price03 ul li{
		margin-bottom: 35px;
	}

	.price03 ul p .font-25b{
		font-size: 18px;
		line-height: 5px;
	}

	.price03 ul p .font-25b::before{
		white-space: pre;
		content: "\A";
	}

	.price-note{
		width: 100%;
	}

	.price-license{
		overflow: auto;
		width: 90%;
	}

	.price-license01{
		margin: 0;
		margin-top: 30px;
		float: none;
	}

	.price-license01-title{
		width: 100%;
	}

	.price-license table{
		width: 100%;
	}

	.price-subtext{
		margin: 15px 0;
	}

	.env{
		width: 100%;
	}

	.env table{
		width: 100%;
		margin: auto;
	}

	.env-width01{
		width: 40%;
	}

	.env-width02{
		width: 24%;
	}

	.env-width03{
		width: 35%;
	}

	.env table td{
		padding: 30px 10px;
	}

	.env-subtext{
		margin: 15px auto;
		width: 90%;
	}

	/* ----index.html 以外---- */
	.others-in{
		width: 100%;
		padding-top: 90px;
	}

	.order-btn{
		width: 100%;
		display: flex;
		justify-content: center;
	}

	.order-btn-in{
		width: 40%;
		max-width: 245px;
		margin: 0px 20px;
	}
	
	.order-btn-in a{
		font-size: 90%;
	}

	.order_flow_title{
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.order_flow_title h5{
		font-size: min(6.41vw,35px);
	}

	.order_flow_subtitle{
		width: 85%;
	}

	.order_flow_subtitle h4{
		font-size: 15px;
	}

	.order_flow_subtitle h4 span{
		font-size: 100%;
	}
	
	.order_flow_internet{
		display: none;
	}
	
	.order_flow_fax{
		display: none;
	}

	.order_flow_internet_tabletSP,
	.order_flow_fax_tabletSP{
		text-align: center;
	}
	
	.order_flow_text0{
		display: inline-block;
		padding-top: 0;
		margin-bottom: 60px;
	}

	.order_flow_text1{
		display: flex;
		align-items: center;
		width: 100%;
		margin-bottom: 20px;
	}

	.order_flow_text1 p {
		width: 150px;
		text-align: center;
	}

	.order_flow_text1 img{
		margin-right: 10px;
	}

	.order_flow_yaji{
		margin-bottom: 20px;
	}

	.order_flow_yaji img{
		width: 20px;
	}

	.order_flow_append{
		width: 85%;
	}

	.faq-menu{
		display: none;
	}

	.faq-menu_SP{
		width: 100%;
	}

	.faq-menu-1column_SP .faq-menu-back {
		background-color:#FFF;
		width:85%;
		height:32px;
		border:solid 2px #E50044;
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
	}
	
	.faq-menu-1column_SP a {
		display:block;
		width:auto;
		height:32px;
	}
	
	.faq-menu-1column_SP ul li {
		padding-left:10px;
		padding-top:1px;
		margin-bottom:15px;
		overflow:hidden;
		margin-left: auto;
		margin-right: auto;
	}
	
	.faq-menu-1column_SP ul li img {
		float:left;
		width:16px;
		margin-top:5px;
	}
	
	.faq-menu-1column_SP ul li h4 {
		float:left;
		margin-left:7px;
		font-size: 16px;
	}

	#faq01, #faq02, #faq03, #faq04, #faq05{
		padding-top: 125px;
		margin-top: -125px;
	}

	.faq-category{
		width: 100%;
	}

	.faq-category .font-25b{
		font-size: 20px;
	}
	
	.faq-box{
		width: 95%;
		padding: 10px;
	}

	.faq-box label{
		padding-left: 0px;
	}

	.faq-label{
		width: 90%;
	}

	.faq-label img{
		margin-right: 10px;
	}

	.faq-label img#multiple_lines{
		margin-bottom: 40px;
	}

	.faq-label h7{
		float: none;
		margin-left: 0px;
		font-size: min(3.59vw,15px);
	}

	.cssqa:checked + .faq-show{
		padding-left: 0px;
	}

	.faq-show .faq-show-in{
		width: 85%;
	}

	.faq-show-in p{
		font-size: min(3.59vw,15px);
	}

	.faq-to-top{
		width: 100%;
	}
	
	.faq-to-top h2{
		padding-right: 20px;
	}

	.faq-img{
		width: 100%;
	}

	.faq-img img{
		width: 100%;
	}

	.faq-yaji-img img{
		width: auto;
	}

	.faq-text-left-space{
		padding-left: 6px;
	}

	.line-break02{
		width: 93%;
	}

	#ikoi-twitter{
		z-index: 99;
		right: -70px;
	}

	#ikoi-twitter img{
		width: 100px;
	}

	.assist_intro{
		width: 95%;
	}

	.assist_intro_img img{
		width: 100%;
	}

	.assist_support_outline_tabletSP{
		background-color: #ffffff;
		width: 90%;
		margin: 0 auto;
		margin-top: 30px;
		border: solid 2px #ce93bf;
		border-radius: 6px;
	}

	.assist_support_outline_title_tabletSP{
		color: #ffffff;
		background-color: #ce93bf;
		border-radius: 2px 2px 0 0;
		padding: 5px 0px;
		text-align: center;
	}

	.assist_support_outline_title_tabletSP h4 span{
		font-size: 14px;
	}

	.assist_outline_in_tabletSP{
		text-align: center;
	}

	.assist_outline_in_tabletSP img{
		width: 45%;
		margin: 3%;
	}

	.assist_outline_text_tabletSP{
		margin: 3%;
	}

	.assist_outline_text_tabletSP h2{
		margin-bottom: 5px;
	}

	.assist_outline_yaji{
		width: 20px;
		margin: 0 auto;
	}

	.assist_cases{
		width: 100%;
	}

	.assist_cases_title{
		width: 90%;
	}

	.assist_case1, .assist_case2, .assist_case3{
		height: auto;
		background-image: none;
		width: 90%;
		border: solid 2px #a55993;
		border-radius: 6px;
		position: relative; /*case1-3 の半丸を表示させるため*/
		margin-top: 70px;
		z-index: 1;
	}

	.assist_case1::before{
		content: "CASE1";
		display: block;
		width: 150px;
		height: 75px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		font-weight: bold;
		padding-top: 6px;
		color: #004ea2;
		border-radius: 75px 75px 0 0;
		border: solid 2px #a55993;
		top: -40px;
		z-index: -1;
	}

	.assist_case2::before{
		content: "CASE2";
		display: block;
		width: 150px;
		height: 75px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		font-weight: bold;
		padding-top: 6px;
		color: #004ea2;
		border-radius: 75px 75px 0 0;
		border: solid 2px #a55993;
		top: -40px;
		z-index: -1;
	}

	.assist_case3::before{
		content: "CASE3";
		display: block;
		width: 150px;
		height: 75px;
		background-color: #ffffff;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		font-size: 20px;
		font-weight: bold;
		padding-top: 6px;
		color: #004ea2;
		border-radius: 75px 75px 0 0;
		border: solid 2px #a55993;
		top: -40px;
		z-index: -1;
	}

	.assist_case_title_wrap{
		padding: 20px 0 10px;
		text-align: center;
		background-color: #ffffff;
		border-radius: 6px 6px 0 0;
	}

	.assist_case_title_wrap img{
		float: none;
	}

	.assist_case_titleBig{
		margin: 0;
		font-size: min(6.41vw,26px);
	}

	.assist_case_titleSmall{
		margin: 0;
		font-size: min(4.615vw,20px);
	}

	.assist_case_expTop{
		background-color: #ffffff;
		padding-top: 0;
		padding-bottom: 15px;
	}

	.assist_case_expTop p{
		margin: 0 5px;
	}

	.assist_case_expTop::before{
		content: url(../image/assist_case_wavyline.svg);
		display: block;
		margin: auto;
		width: 90%;
		padding-bottom: 10px;
	}

	.assist_case_wrap{
		background-color: #f4ebf4;
	}

	.assist_case_content_wrap{
		width: 100%;
		padding-top: 20px;
	}

	.assist_case_title{
		display: flex;
		justify-content: center;
		align-items: center;
		padding-bottom: 15px;
	}

	.assist_case_title p{
		font-weight: bold;
		color: #ffff00;
		line-height: 15px;
		font-size: 12px;
		width: 55px;
		height: 55px;
		border-radius: 50%;
		background-color: #a55993;
		padding-top: 12px;
		margin-right: 10px;
		text-align: center;
		transform:rotate(-20deg);
	}

	.assist_case_title h4{
		max-width: 220px;
		color: #a55993;
		font-size: 20px;
	}

	.assist_case_caption_in{
		text-align: center;
	}

	.assist_case_caption_in img{
		width: 160px;
	}

	.assist_case_caption_in p{
		text-align: center;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.assist_case_caption_out p{
		text-align: center;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.assist_case_yaji{
		width: 80px;
		height: 90px;
		margin: auto;
		padding-top: 34px;
		transform: rotate(90deg);
	}

	.assist_case_expBottom{
		background-color: #f4ebf4;
		border-radius: 0 0 6px 6px;
		padding-bottom: 15px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.assist_case_expBottom p{
		font-size: 15px;

	}

	.news_indv_wrapper{
		margin: 10px 20px;
	}

	.news_contents a{
		font-size: 15px;
	}

	.news_indv_title{
		font-size: 20px;
	}

	.news_indv_content{
		font-size: 14px;
	}

	.form_top_explanation{
		padding: 0px 20px;
	}

	.form_top_explanation h2{
		font-size: min(3.85vw,16px);
	}

	.form_top_explanation p{
		font-size: min(3.59vw,14px);
	}

	#formspace{
		width: 100%;
		padding: 0px 10px;
	}

	.formleft{
		width: 20%;
		padding-left: 5px;
		padding-right: 5px;
		padding-top: 26px;
	}

	.formleft02{
		width: 20%;
		padding-left: 5px;
		padding-right: 0px;
	}

	.formright{
		width: 80%;
		padding-left: 20px;
		padding-top: 24px;
	}
	
	.formright02{
		width: 80%;
		padding-left: 20px;
		padding-top: 20px;
	}

	.formtitle01 h2{
		font-size: min(3.59vw,14px);
	}

	.formtitle01 p{
		line-height: 5px;
	}

	.formright input{
		display: block;
	}

	.formright .long{
		width: 95%;
	}

	.form_2lines .formleft{
		height: 130px;
	}

	.form_2lines .formright{
		height: 130px;
		padding-top: 10px;
	}

	.form_2lines .long_name{
		width: 80%;
	}

	.form_2lines .formright input{
		margin-top: 10px;
	}

	.trial-version{
		height: 170px;
		padding-top: 10px;
	}

	.trial-version p{
		font-size: 12px;
		line-height: 18px;
	}

	.trial-version h8{
		font-size: 14px;
	}
	
	.trial-version .container{
		font-size: 14px;
	}

	.online-instruction{
		height: 170px;
		padding-top: 10px;
	}

	.online-instruction h8{
		font-size: 14px;
	}

	.online-instruction .container{
		font-size: 14px;
	}

	.contents-inquiry{
		width: 80%;
	}

	.form_annot{
		font-size: 13px;
	}

	.info-box{
		width: 100%;
	}

	/*-------soushin.html--------*/
	.soushin_explanation{
		padding: 0px 20px;
	}

	.soushin_explanation h2{
		font-size: min(3.85vw,16px);
	}

	
	.ideal{
		background-position: bottom;
	}

	.ideal_subtitle p{
		font-size: min(5.9vw,28px);
	}

	.ideal_text{
		padding: 0px 10px;
	}

	.ideal_text h4{
		font-size: min(3.85vw,16px);
	}

	.ideal_guide_to_dds a{
		font-size: 14px;
	}

	.privacy_wrapper{
		width: 100%;
		padding: 0px 20px;
	}

	.privacy_section_title{
		font-size: 17px;
	}

	.privacy_contact{
		font-size: 15px;
	}


	/* ----footer---- */
	#footerAreain{
		width: 100%;
	}

	#footlink{
		float: none;
		padding-left: 20px;
	}

	#footcom{
		float: none;
		padding-right: 20px;
	}

	.footcom01 h4{
		font-size: 16px;
	}

	.footcom01 h5{
		font-size: 32px;
	}

	#copy-in{
		width: 100%;
	}
}