@charset "utf-8";

/* 
	lastup date: 2024.02.26
*/

/* default
=============================================== */

* {
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	margin: 0;
	padding: 0;
}
html,body,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td {
	list-style: none;
	line-height: 1;
	border-collapse: collapse;
	border-spacing: 0;
}
html {
	min-height: 100%;
	font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
	position: relative;
}
body {
	font-family: 'Kosugi Maru',"Yu Gothic",YuGothic,"メイリオ",Meiryo,Arial,Helvetica,Verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","ＭＳ Ｐゴシック","MS PGothic",Sans-serif;
	font-weight: 500;
}
q:before,q:after {
	content:'';
}
object,embed {
	vertical-align: top;
}
img {
	max-width: 100%;
	height: auto;
	max-height: 100%;
	width: auto;
	vertical-align: bottom;
    -webkit-backface-visibility: hidden;
}
img,abbr,acronym,fieldset {
	border: 0;
}



/* link
=============================================== */

a {
	color: #FF6E00;
	text-decoration: none;
	transition: .1s ease;
}
a:visited {
	color: #FF6E00;
	text-decoration: none;
}
a:hover {
	color: #FF6E00;
	text-decoration: underline;
}
a[id]:hover {
	color: #FF6E00;
}
a:active {
	color: #41D3BD;
}
a[href^="tel:"] {
    pointer-events: none;
}



/* fade setting
=============================================== */

body::before {
	content: '';
	position: fixed;
	z-index: 9999;
	top: 0;
	right: 100%;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	pointer-events: none;
	-webkit-transition: right 1.0s cubic-bezier(0.4, 0, 0.2, 1);
	transition: right 1.0s cubic-bezier(0.4, 0, 0.2, 1);
}

body::after {
	content: '';
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 100%;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	pointer-events: none;
	-webkit-transition: left 1.0s cubic-bezier(0.4, 0, 0.2, 1);
	transition: left 1.0s cubic-bezier(0.4, 0, 0.2, 1);
}
body.pagef-in::before {
	right: 0;
}
body.pagef-out::after {
	left: 0;
}

/* base
=============================================== */

html {
	background-color: #FFF;
}
body {
	color: #333;
	min-width: 1000px;
	background-color: #FFF;
}
.pc {
	display: block;
}
br.pc {
	display: inline-block;
}
.sp, br.sp {
	display: none;
}
.text-left {
	text-align: left !important;
}
.text-center {
	text-align: center !important;
}
.text-right {
	text-align: right !important;
}
.lead {
	font-size: 2.4rem !important;
}
.txt-list, .dec-list {
	margin: 1em 0 3em 1.8em;
}
.txt-list li, .dec-list li {
	margin: .5em 0;
	font-size: 1.6rem;
	line-height: 1.8;
}
.txt-list li {
	list-style: circle;
}
.dec-list li {
	list-style: decimal;
}
.ex-list {
	margin: 35px 0;
}
.ex-list li {
	margin: 0 0 10px 0;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.4rem;
	line-height: 1.6;
}
.mk-yl {
	background: linear-gradient(transparent 60%, #ff6 60%);
}
.mk-gr {
	background: linear-gradient(transparent 60%, #ADDBB8 60%);
}


/* header
=============================================== */

#global-header {
	width: 100%;
}
#header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1000px;
	margin: 0 auto;
	padding: 15px 0 15px;
}
#global-header #logo {
	width: 560px;
}
#global-header #logo img {
	height: 50px;
}
#global-header #logo a {
	color: #252F43;
	font-family: 'Yu Gothic';
	font-size: 1.4rem;
	font-weight: 700;
}
#global-header #logo a b {
	font-size: 2.0rem;
}
#global-header #header-freedial {
	width: 210px;
}
#global-header #header-freedial img {
	height: 40px;
}
#global-header #header-contact {
	width: 230px;
	padding-left: 30px;
}
#global-header #header-contact a {
	display: block;
	padding: 12px 30px;
	border-radius: 25px;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	background: -webkit-gradient(65deg, #FFA801 30%, #FF6C00);
	background: linear-gradient(65deg, #FFA801 30%, #FF6C00);
}
#global-header #header-contact a:hover {
	text-decoration: none;
	background-position: 100% 0;
}


/* navigation
=============================================== */

#pc-nav {
	padding: 15px 0;
	background: #EAF2EF;
}
#pc-nav ul {
	display: flex;
	justify-content: space-between;
	margin: auto;
	max-width: 1080px;
}
#pc-nav li {
	margin: 0 9px;
}
#pc-nav li a {
	font-size: 1.6rem;
	font-weight: bold;
	color: #252F43;
	text-decoration: none;
}
#pc-nav li a.current, 
#pc-nav li a:hover {
}
#pc-nav li a:hover {
	color: #41D3BD;
	transition: .2s ease;
}
#sp-nav {
	display: none;
}



/* footer
=============================================== */

#global-footer {
	background-color: #F0F0F0;
}
#footer-inner  {
	margin: auto;
	padding: 50px 0;
	max-width: 1000px;
}
.fnav {
	margin: 35px 0;
	display: flex;
	justify-content: center;
}
.fnav li {
	padding: 0 20px;
}
.fnav li a {
	color: #3765A6;
	font-size: 1.6rem;
	opacity: 1;
	transition: .2 ease;
}
.fnav li a:hover {
	opacity: .7;
}
#footer-info {
	text-align: center;
}
#footer-info dt {
	margin-bottom: 25px;
}
#footer-info dt img {
	height: 65px;
}
#footer-info dd {
	font-size: 1.6rem;
	line-height: 1.6;
}
#footer-info dd > p {
	margin-bottom: 20px;
}
#footer-info dd img {
	height: 50px;
}
#copyright {
	font-size: 1.4rem;
	text-align: center;
}



/* page
=============================================== */

.totop {
	margin: 0 0 50px 0;
	text-align: center;
}
#page-header {
	padding: 60px 0 30px;
	background: #FFF;
}
#page-header h1 {
	text-align: center;
	font-size: 3.6rem;
	color: #252F43;;
}
.section-area {
	padding-bottom: 15px;
}
.txt-area {
	padding-bottom: 24px;
}
.txt-area p {
	margin-bottom: 1em;
	font-size: 1.6rem;
	line-height: 1.6;
}
.h2-01 {
    margin-bottom: 35px;
    border-left: 5px solid #252F43;
    padding-left: 15px;
	font-size: 2.8rem;
	line-height: 1.6;
	letter-spacing: 2px;
	color: #252F43;
}
.h2-01 span {
	padding-left: 1em;
	font-size: 1.6rem;
}
.h2-02 {
    margin-bottom: 35px;
	font-size: 2.8rem;
	text-align: center;
	letter-spacing: 2px;
	line-height: 1.6;
	color: #252F43;
}
.h3-01 {
	margin-bottom: 20px;
	padding: 15px;
	font-size: 2.0rem;
	color: #111;
	background: #EEE;
}
.h4-01 {
	margin: .75em 0;
	font-size: 1.8rem;
}

.btn01 {
	margin: 25px 0;
	text-align: center;
}
.btn01 a {
	display: inline-block;
	padding: 25px 50px;
	border-radius: 10px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
}
.btn01 a span {
	padding: 5px 40px 5px 10px;
	background: url(../img/common/icon_arrow_r.svg) no-repeat 100% 50%;
	background-size: auto 28px;
}

.btn01 a:hover {
	opacity: 0.7;
	transition: .1s ease;
	text-decoration: none;
}
.btn01 a.org {
	color: #FFF;
	background: -webkit-gradient(65deg, #FFA801 30%, #FF6C00);
	background: linear-gradient(65deg, #FFA801 30%, #FF6C00);
}
.btn01 a.grn {
	color: #FFF;
	background: #41D3BD;
}
.btn01 a.blue {
	color: #FFF;
	background: #2659CE;
}
.btn-col2 {
	display: flex;
	justify-content: center;
}
.btn-col2 div:nth-of-type(1) {
	margin-right: 20px;
}
.btn-col2 div:nth-of-type(2) {
	margin-left: 20px;
}

.row {
	display: flex;
	flex-wrap: wrap;
}
.row .left {
	padding-right: 25px;
	width: 50%;
}
.row .right {
	padding-left: 25px;
	width: 50%;
}


/* home
=============================================== */

#eye {
	position: relative;
	height: 450px;
	background: #FFF url(../img/index/bg_eye.jpg) no-repeat 50% 50%;
}
#eye-inner {
	margin: auto;
	max-width: 1000px;
	padding-top: 25px;
}
#eye-inner img {
	height: 180px;
}
#eye-inner div:nth-of-type(1) img {
	animation-delay: 0.5s;
}
#eye-inner div:nth-of-type(2) img {
	animation-delay: 0.8s;
}
#eye-inner div:nth-of-type(2) {
	padding: 25px 0 0 88px;
}

.sec-sttl {
	padding: 35px 0;
	text-align: center;
	font-weight: bold;
	color: #FFF;
}
.sec-sttl.fs30 { font-size: 3rem; }
.sec-sttl.fs40 { font-size: 4rem; }
.sec-sttl.fs50 { font-size: 5rem; }
.sec-sttl.fs60 { font-size: 6rem; }
.sec-sttl.fs70 { font-size: 7rem; }

.sec-sttl.dkblue {
	background: #15436F;
}
.sec-sttl.red {
	background: #D34141;
}
.sec-sttl.green {
	background: #24A87B;
}
.sec-sttl.skblue {
	background: #419AD3;
}
.sec-sttl.nvblue {
	background: #203F8E;
	color: #FFF600;
}

.section01 {
	padding: 50px 0;
	background: #FFFFF2;
}
.section01 div {
	text-align: center;
}
.section01 div:nth-of-type(2) {
	margin: 35px 0;
}
.section02 .sec02ttl {
	padding: 20px 0;
	background: #D34141;
	text-align: center;
	line-height: 1.4;
}
.section02 .sec02ttl .inner {
	position: relative;
	max-width: 1000px;
	margin: auto;
}
.section02 .sec02ttl .inner span {
	display: block;
	color: #FFF;
}
.section02 .sec02ttl span:nth-of-type(1) {
	position: absolute;
	top: calc(50% - 77px);
	left: 50px;
}
.section02 .sec02ttl span:nth-of-type(1) img {
	width: 114px;
	height: 155px;
}
.section02 .sec02ttl span:nth-of-type(2),
.section02 .sec02ttl span:nth-of-type(4) {
	font-size: 6rem;
	font-weight: bold;
}
.section02 .sec02ttl span:nth-of-type(3) {
	font-size: 3rem;
}
.section02 .sec02body {
	display: flex;
	align-items: end;
	margin: auto;
	padding: 35px 0 0 0;
	max-width: 1000px;
}
.section02 .sec02body div:nth-of-type(1) {
	width: 450px;
}
.section02 .sec02body div:nth-of-type(2) {
	width: 550px;
	padding-bottom: 50px;
}
.section02 .sec02body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section03 .sec03body {
	display: flex;
	flex-direction: row-reverse;
	align-items: end;
	margin: auto;
	padding: 35px 0 0 0;
	max-width: 1000px;
}
.section03 .sec03body div:nth-of-type(1) {
	width: 450px;
}
.section03 .sec03body div:nth-of-type(2) {
	width: 550px;
	padding-bottom: 50px;
}
.section03 .sec03body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section04 .sec04body {
	display: flex;
	align-items: end;
	margin: auto;
	padding: 35px 0 0 0;
	max-width: 1000px;
}
.section04 .sec04body div:nth-of-type(1) {
	width: 450px;
}
.section04 .sec04body div:nth-of-type(2) {
	width: 550px;
	padding-bottom: 50px;
}
.section04 .sec04body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}

.section05 {
	padding: 50px 0 150px;
}
.section05 .sec05-txt {
	margin-bottom: 35px;
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	color: #D34141;
}
.section05 .inner {
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}
.section05 .course {
	position: relative;
	padding: 0 0 25px 0;
	width: calc((100% / 3) - 25px);
}
.section05 .course:nth-of-type(1) {
	border: 2px solid #FF8800;
}
.section05 .course:nth-of-type(2) {
	border: 2px solid #0090FF;
}
.section05 .course:nth-of-type(3) {
	border: 2px solid #51AD47;
}
.section05 .course-name {
	padding: 10px 12px;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
}
.section05 .course-name span {
	font-size: 2.0rem;
}
.section05 .course:nth-of-type(1) .course-name {
	background: #FF8800;
}
.section05 .course:nth-of-type(2) .course-name {
	background: #0090FF;
}
.section05 .course:nth-of-type(3) .course-name {
	background: #51AD47;
}
.section05 .course-osusume {
	position: absolute;
	right: 10px;
	top: -45px;
}
.section05 .course-osusume img {
	height: 60px;
}
.section05 .service-time {
	padding: 20px 5px 10px;
	text-align: center;
}
.section05 .service-time p {
	margin: .5em 0;
	font-size: 1.8rem;
}
.section05 .service-time .time {
	font-size: 3.6rem;
	font-weight: bold;
	line-height: .8;
}
.section05 .service-time .time span {
	font-size: 1.6rem;
	font-weight: normal;
}
.section05 .course:nth-of-type(1) .service-time p b {
	color: #FF8800;
}
.section05 .course:nth-of-type(2) .service-time p b {
	color: #0090FF;
}
.section05 .course:nth-of-type(3) .service-time p b {
	color: #51AD47;
}
.section05 .course-fee {
	text-align: center;
}
.section05 .course-fee span {
	color: #283146;
}
.section05 .course-fee span:nth-of-type(1) {
	display: block;
	margin-bottom: 5px;
	font-size: 2.0rem;
}
.section05 .course-fee span:nth-of-type(2) {
	font-size: 6.0rem;
	font-weight: bold;
}
.section05 .course-fee span:nth-of-type(3) {
	font-size: 1.6rem;
}
.section05 .course-fee span:nth-of-type(4) {
	display: block;
	font-size: 2.0rem;
}
.section05 .course:nth-of-type(1) .course-fee span:nth-of-type(2),
.section05 .course:nth-of-type(1) .course-fee span:nth-of-type(3) {
	color: #FF8800;
}
.section05 .course:nth-of-type(2) .course-fee span:nth-of-type(2),
.section05 .course:nth-of-type(2) .course-fee span:nth-of-type(3) {
	color: #0090FF;
}
.section05 .course:nth-of-type(3) .course-fee span:nth-of-type(2),
.section05 .course:nth-of-type(3) .course-fee span:nth-of-type(3) {
	color: #51AD47;
}

.section06 .sec06ttl {
	padding: 20px 0;
	background: #419AD3;
	text-align: center;
	line-height: 1.4;
}
.section06 .sec06ttl .inner {
	position: relative;
	max-width: 1000px;
	margin: auto;
}
.section06 .sec06ttl .inner span {
	display: block;
	color: #FFF;
}
.section06 .sec06ttl span:nth-of-type(1) {
	position: absolute;
	top: calc(50% - 60px);
	left: 0px;
}
.section06 .sec06ttl span:nth-of-type(1) img {
	width: 108px;
	height: 120px;
}
.section06 .sec06ttl span:nth-of-type(2) {
	font-size: 6rem;
	font-weight: bold;
}
.section06 .sec06ttl span:nth-of-type(3) {
	font-size: 3rem;
}
.section06 .sec06ttl p {
	font-weight: bold;
	color: #FFF;
}
.section06 .sec06ttl p:nth-of-type(1),
.section06 .sec06ttl p:nth-of-type(3) {
	font-size: 5rem;
}
.section06 .sec06ttl p:nth-of-type(2) {
	margin: 15px 0;
	font-size: 3rem;
}
.section06 .sec06eye {
	padding: 75px 0;
	background: url(../img/index/bg_office01.jpg) 50% 50% no-repeat;
	text-align: center;
}
.section06 .sec06eye p {
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.4;
}
.section06 .sec06eye p:nth-of-type(2) {
	margin: 35px 0 45px;
}
.section06 .sec06head {
	padding: 50px 0;
	background: linear-gradient(90deg, rgba(223,244,249,1) 0%, rgba(242,223,249,1) 100%);
}
.section06 .sec06body {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row-reverse;
	align-items: end;
	margin: auto;
	padding: 50px 0 0 0;
	max-width: 1000px;
}
.section06 .sec06body p {
	margin-bottom: 35px;
	width: 100%;
	font-size: 4.0rem;
	font-weight: bold;
	text-align: center;
}
.section06 .sec06body div:nth-of-type(1) {
	width: 450px;
}
.section06 .sec06body div:nth-of-type(2) {
	width: 550px;
	padding-bottom: 50px;
}
.section06 .sec06body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section07 .inner {
	margin: auto;
	padding: 50px 0;
	max-width: 900px;
}
.section07 .inner div {
	text-align: center;
}
.section07 .inner p {
	border: 3px solid #D34141;
	border-radius: 4px;
	padding: 15px 0;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
}
.section07 .inner ul {
	margin-top: 50px;
}
.section07 .inner ul li {
	padding: 20px 0 20px 50px;
	border-bottom: 2px solid #CCC;
	font-size: 2.8rem;
	line-height: 1.6;
	background: url(../img/index/icon_check_skblue.png) 0 50% no-repeat;
	background-size: auto 40px;
}
.section07 .inner ul li:last-child {
	border: none;
}
.section08 {
	padding: 50px 0;
	background: linear-gradient(90deg, rgba(223,244,249,1) 0%, rgba(242,223,249,1) 100%);
}
.section08 .inner {
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: space-around;
}
.section08 .course {
	position: relative;
	padding: 0 0 25px 0;
	width: calc((100% / 2) - 50px);
	background: #FFF;
}
.section08 .course:nth-of-type(1) {
	border: 2px solid #8E21B6;
	border-image: linear-gradient(to right, #4085CB, #8E21B6) 1;
}
.section08 .course:nth-of-type(2) {
	border: 2px solid #B6218E;
	border-image: linear-gradient(to right, #5B40CB, #B6218E) 1;
}
.section08 .course-name {
	padding: 10px 12px;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
}
.section08 .course-name span {
	font-size: 2.0rem;
}
.section08 .course:nth-of-type(1) .course-name {
	background: linear-gradient(to right, #4085CB, #8E21B6);
}
.section08 .course:nth-of-type(2) .course-name {
	background: linear-gradient(to right, #5B40CB, #B6218E);
}
.section08 .service-time {
	padding: 15px 5px 10px;
	text-align: center;
}
.section08 .service-time p {
	margin: .5em 0;
	font-size: 2.0rem;
}
.section08 .service-time .time {
	font-size: 3.6rem;
	font-weight: bold;
	line-height: .8;
	color: #5B40CB;
}
.section08 .service-time .time span {
	font-size: 1.6rem;
	font-weight: normal;
	color: #333;
}
.section08 .course-fee {
	text-align: center;
}
.section08 .course-fee span {
	color: #333;
}
.section08 .course-fee span:nth-of-type(1) {
	display: block;
	margin-bottom: 5px;
	font-size: 2.0rem;
}
.section08 .course-fee span:nth-of-type(2) {
	font-size: 6.0rem;
	font-weight: bold;
	color: #E51373;
}
.section08 .course-fee span:nth-of-type(3) {
	font-size: 1.6rem;
	color: #E51373;
}
.section08 .course-fee span:nth-of-type(4) {
	display: block;
	font-size: 2.0rem;
}



#top-replay {
	padding: 75px 0 50px;
	background: #FFF;
}
#top-replay .inner {
	margin: auto;
	max-width: 1000px;
}
#top-replay .inner .row {
	margin: 35px 0;
	align-items: center;
}
#top-replay .inner .row .left {
	text-align: center;
}

#top-replay .top-replay-header-text {
	margin-bottom: 50px;
	font-size: 6.0rem;
	font-weight: bold;
	text-align: center;
	color: #15436F;
}
#top-replay .top-replay-service {
	padding: 25px;
	border: 3px solid #41D3BD;
	border-radius: 4px;
}
#top-replay .top-replay-service-title {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 35px;
	font-size: 3.0rem;
	font-weight: bold;
	color: #41D3BD;
}
#top-replay .top-replay-service-title:nth-of-type(1) {
	font-size: 2.8rem;
}
#top-replay .top-replay-service-title img {
	margin-right: 15px;
	height: 50px;
}
#top-replay .top-other-service {
}
#top-replay .top-other-service-title {
	margin-bottom: 20px;
	padding: 18px;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	background: #15436F;
}
#top-replay .top-replay-service-body p,
#top-replay .top-other-service-body p {
	margin-bottom: 20px;
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
}
#top-replay .top-replay-service-body p:last-child,
#top-replay .top-other-service-body p:last-child,
#remote-setting p:last-child {
	margin: 0;
}
#remote-setting {
	padding: 25px;
	border: 3px solid #15436F;
	border-radius: 4px;
}
#remote-setting p {
	margin-bottom: 20px;
	font-size: 2.0rem;
	line-height: 1.8;
	text-align: center;
}
#remote-setting p:nth-child(1) {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.8rem;
	font-weight: bold;
	color: #15436F;
	text-align: center;
}
#remote-setting p:nth-child(1) span {
	padding: 0 15px 15px;
}
#remote-setting p:nth-child(1) span img {
	height: 60px;
}

#top-price {
	background: #F0F0F0;
}
#top-price-inner {
	margin: auto;
	padding: 50px 0;
	max-width: 1000px;
}
#top-price-inner h2 {
	margin-bottom: 35px;
	font-size: 4.0rem;
	text-align: center;
	color: #252F43;
}
.price-list {
	display: flex;
	margin: 100px 0 0;
	border: 1px solid #CCD4E3;
}
.price-list .course {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 250px;
	border-right: 1px solid #CCD4E3;
}
.price-list .course.office-regA,
.price-list .course.office-regB,
.price-list .course.office-long {
	max-width: 50%;
}
.price-list .course:last-child {
	border-right: none;
}
.price-list .course h3 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 25px 15px;
	font-size: 2.4rem;
	background: #FF8800;
	color: #FFF;
}
.price-list .course.regA h3,
.price-list .course.regB h3 {
	background: #0090FF;
}
.price-list .course.full h3 {
	border-right: none;
	background: #51AD47;
	transform: scale(1.1);
}
.price-list .course.office-regA h3,
.price-list .course.office-regB h3,
.price-list .course.office-long h3,
.page-callcenter .price-list h3 {
	background: #252F43;
}
.price-list .course h3 span {
	display: inline-block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	font-size: 1.8rem;
	line-height: 30px;
	text-align: center;
	background: #FFF;
	color: #252F43;
}
.price-list .course:nth-child(1) h3 span,
.price-list .course:nth-child(4) h3 span,
.price-list .course.office-long h3 span {
	margin-right: 5px;
}
.price-list .course:nth-child(2) h3 span,
.price-list .course:nth-child(3) h3 span,
.price-list .course.office-regA h3 span,
.price-list .course.office-regB h3 span {
	margin-left: 5px;
}
.price-list .course.short h3 div {
	position: absolute;
	top: -45px;
	left: calc(50% - 75px);
	width: 150px;
	background: transparent;
}
.price-list .course.full h3 div {
	position: absolute;
	top: -70px;
	left: calc(50% - 60px);
	width: 120px;
	background: transparent;
}
.price-list .course div.mprice {
	padding: 15px;
	background: #FFF;
}
.price-list .course div.mprice p {
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: center;
}
.price-list .course div.mprice p strong {
	padding-right: 5px;
	font-size: 3.6rem;
	color: #252F43;
}
.price-list .course div.describe {
	position: relative;
	padding: 15px;
}
.price-list .course.short div.describe {
	color: #FF6C00;
	background-color: #FFEDDA;
}
.price-list .course.regA div.describe,
.price-list .course.regB div.describe {
	color: #0090FF;
	background-color: #ECF4FE;
}
.price-list .course.full div.describe {
	color: #2F522A;
	background-color: #F2FFEF;
}
.price-list .course div.describe p {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}
.price-list .course.short .icon-good {
	position: absolute;
	right: 10px;
	bottom: 20px;
	width: 40px;
}
.price-list .course.regB .icon-good {
	position: absolute;
	right: 5px;
	bottom: 20px;
	width: 40px;
}
.price-list .course .icon-smile {
	position: absolute;
	right: 15px;
	bottom: 20px;
	width: 30px;
}
.price-list .course ul li {
	padding: 15px;
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: center;
}
.price-list .course ul li:nth-child(odd) {
	background: #F4FDFF;
}
.price-list .course ul li:nth-child(even) {
	background: #FFF;
}
.price-list .course ul li strong {
	display: block;
	font-size: 2.4rem;
	color: #252F43;
}
.price-list .course ul li strong span {
	padding-left: 3px;
	font-size: 1.4rem;
}
.price-list .course ul li.spot {
	position: relative;
	z-index: 2;
	margin-bottom: -1px;
	margin-right: -1px;
	border-top: 3px solid #252F43;
	border-right: 1px solid #CCD4E3;
	border-bottom: 3px solid #252F43;
}
.price-list .course:first-child ul li.spot {
	margin-left: -1px;
	border-left: 3px solid #252F43;
}
.price-list .course:last-child ul li.spot {
	border-right: 3px solid #252F43;
}


#top-price-inner .price-note ul.ex-list {
	margin-bottom: 15px;
}



#top-option {
	background: #F2FFFD;
}
#top-option-inner {
	margin: auto;
	padding: 50px 0;
	max-width: 1000px;
}
#top-option-inner h2 {
	margin-bottom: 25px;
	font-size: 4.0rem;
	text-align: center;
	color: #41D3BD;
}
#top-option-inner .sub-cap {
	margin-bottom: 35px;
	font-size: 1.8rem;
	text-align: center;
	color: #111;
}
#top-option-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 35px -15px;
}
#top-option-list li {
	overflow: hidden;
	width: calc(33.333% - 30px);
	margin: 0 15px 30px;
	padding: 30px;
	box-shadow: 0 0 15px rgba(65,211,189,0.1);
	background: #FFF;
}
#top-option-list li dl dt {
	margin-bottom: 15px;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;	
	color: #41D3BD;
}
#top-option-list li dl dt img {
	margin-bottom: 15px;
	height: 80px;
}
#top-option-list li dl dd {
	font-size: 1.6rem;
	line-height: 1.6;
	text-align: center;
}
#page-app {
	background: #252F43;
}
#page-app-inner {
	margin: auto;
	padding: 50px 0;
	max-width: 1000px;
}
#page-app-inner h2 {
	margin-bottom: 35px;
	font-size: 6.0rem;
	text-align: center;
	color: #FFF;
}
#page-app-inner #btn-contact {
	display: flex;
	justify-content: center;
	align-items: center;
}
#page-app-inner #btn-contact li {
	margin: 0 25px;
}
#page-app-inner #btn-contact li:first-child a {
	font-size: 1.8rem;
	line-height: 1.8;
	color: #FFF;
}
#page-app-inner #btn-contact li:first-child a img {
	height: 50px;
}
#page-app-inner #btn-contact li:last-child a {
	padding-left: 25px;
	padding-right: 25px;
}
#page-app-inner #btn-contact li:last-child a span {
	padding: 0 50px;
}



/* tel service
=============================================== */

#tel-service #tel-service-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}
#tel-service .section-area {
	margin-bottom: 75px;
}
.tel-header {
	padding-top: 30px;
}
.tel-header h2 div {
	display: inline-block;
	position: relative;
	margin-bottom: 50px;
}
.tel-header h2 div::before,
.tel-header h2 div::after {
	content: '';
	display: block;
	position: absolute;
	top: calc(-45px / 2);
	width: 90px;
	height: 90px;
}
.tel-header h2.t01 div::before {
	left: -100px;
	background: url(../img/tel/sub01.svg) no-repeat 0 0;
	background-size: cover;
}
.tel-header h2.t01 div::after {
	right: -100px;
	background: url(../img/tel/sub02.svg) no-repeat 0 0;
	background-size: cover;
}
.tel-header h2.t02 div::before {
	left: -100px;
	background: url(../img/tel/sub03.svg) no-repeat 0 0;
	background-size: cover;
}

.page-tel .price-list,
.page-office .price-list,
.page-pricelist .price-list,
.page-callcenter .price-list {
	margin-top: 50px;
}

.page-tel .price-note,
.page-office .price-note,
.page-pricelist .price-note
.page-callcenter .price-note {
	margin-bottom: 50px;
}

/* office service
=============================================== */

#office-service #office-service-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}


/* callcenter service

=============================================== */

#cc-service #cc-service-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}
#cc-service .section-area {
	margin-bottom: 75px;
}
.cc-header {
	padding-top: 30px;
}
.cc-header h2 div {
	display: inline-block;
	position: relative;
	margin-bottom: 50px;
}
.cc-header h2 div::before,
.cc-header h2 div::after {
	content: '';
	display: block;
	position: absolute;
	top: calc(-45px / 2);
	width: 90px;
	height: 90px;
}
.cc-header h2.t01 div::before {
	left: -100px;
	background: url(../img/callcenter/ccsub01.svg) no-repeat 0 0;
	background-size: cover;
}
.cc-header h2.t01 div::after {
	right: -100px;
	background: url(../img/callcenter/ccsub02.svg) no-repeat 0 0;
	background-size: cover;
}

#cc-service .cc-point {
	max-width: 900px;
	margin: auto;
	padding: 1px 20px;
	border: 3px solid #009890;
	border-radius: 4px;
	background: #F0F0F0;
}
#cc-service .cc-point p {
	margin: 1.5em 0;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
}
#cc-service .cc-point p span {
	font-size: 2.0rem;
	font-weight: normal;
}
#cc-service .price-list .course {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 33.33333%;
	border-right: 1px solid #CCD4E3;
}
#cc-service .price-list .course div:nth-child(odd) {
	background: #F4FDFF;
}
#cc-service .price-list .course div:nth-child(even) {
	background: #FFF;
}
#cc-service .price-list .course:last-child {
	border: none;
}


/* price list
=============================================== */

#price-list #price-list-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}
#price-list .section-area {
	margin-bottom: 75px;
}
#price-list .section-area .txt-area p {
	font-size: 2.2rem;
}
.pl-header {
	padding-top: 30px;
}
.pl-header h2 div {
	display: inline-block;
	position: relative;
	margin-bottom: 50px;
}
.pl-header h2 div::before,
.pl-header h2 div::after {
	content: '';
	display: block;
	position: absolute;
	top: calc(-45px / 2);
	width: 90px;
	height: 90px;
}
.pl-header h2.pl01 div::before {
	left: -100px;
	background: url(../img/pricelist/sub01.svg) no-repeat 0 0;
	background-size: cover;
}
.pl-header h2.pl01 div::after {
	right: -100px;
	background: url(../img/pricelist/sub02.svg) no-repeat 0 0;
	background-size: cover;
}




/* model
=============================================== */

#model {
	padding-top: 20px;
}
#model .model-sec-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}
.model-sec01 {
	margin: 0 20px;
	background: #FFF5D1 url(../img/model/model_sec01_bg.jpg) no-repeat 50% 0;
}
.model-sec01 h2 {
	text-align: center;
}
.model-sec01 h2 img {
	width: 100%;
}
.sec-mv01 {
	position: relative;
}
.sec-mv01 p:nth-child(1) {
	position: absolute;
	top: -35px;
	left: 25px;
	width: 300px;
	height: 300px;
}
.sec-mv01 p:nth-child(1) img {
	position: relative;
    z-index: 2;
	animation-delay: 0.5s;
	animation-duration:0.3s;
}
.sec-mv01 p:nth-child(2) img {
	position: relative;
    z-index: 1;
}
.model-sec02 {
	position: relative;
	margin: 0 20px;
	background: #D4F2FF;
}
#model .model-sec02 .model-sec-inner {
	padding-bottom: 0;
}
.model-sec02 .sec-sub-ttl {
	position: relative;
	z-index: 1;
	padding: 25px 0;
	background: #1168B5;
}
.model-sec02 .sec-sub-ttl h2 {
	font-size: 4.8rem;
	text-align: center;
	color: #FFF100;
}
.model-sec02 .sec-sub-ttl h2 span {
	color: #FFF;
}
.model-sec02 .model-sec-inner h2 {
	margin-bottom: 30px;
	text-align: center;
}
.ttl-ribbon::before,
.ttl-ribbon::after {
	content: "";
	position: absolute;
	top: 0;
	width: 0;
	height: 0;
	padding: 0;
	border-style: solid;
}
.ttl-ribbon::before {
	left: 0;
	border-color: transparent transparent transparent #FFF;
	border-width: 50px 0 50px 50px;
}
.ttl-ribbon::after {
	right: 0;
	border-color: transparent #FFF transparent transparent;
	border-width: 50px 50px 50px 0;
}
.model-sec03 {
	position: relative;
	margin: 0 20px;
	background: #FCE0EF;
}
#model .model-sec03 .model-sec-inner {
	padding-bottom: 0;
}
.model-sec03 .sec-sub-ttl {
	position: relative;
	z-index: 1;
	padding: 25px 0;
	background: #00A73C;
}
.model-sec03 .sec-sub-ttl h2 {
	font-size: 4.8rem;
	text-align: center;
	color: #FFF100;
}
.model-sec03 .sec-sub-ttl h2 span {
	color: #FFF;
}
.model-sec03 .model-sec-inner h2 {
	margin-bottom: 30px;
	text-align: center;
}
.model-sec04 {
	position: relative;
	margin: 0 20px;
	background: #D4F2FF;
}
#model .model-sec04 .model-sec-inner {
	padding-bottom: 0;
}
.model-sec04 .model-sec-inner h2 {
	margin-bottom: 30px;
	text-align: center;
}
.model-sec05 {
	position: relative;
	margin: 0 20px;
	background: #FCE0EF;
}
#model .model-sec05 .model-sec-inner {
	padding-bottom: 25px;
}
.model-sec05 .model-sec-inner h2 {
	margin-bottom: 30px;
	text-align: center;
}

.model-footer {
	position: relative;
	margin: 0 20px;
	background: #FFF;
}
.model-footer .sec-sub-ttl {
	position: relative;
	z-index: 1;
	padding: 35px 0;
	background: #FF6E00;
}
.model-footer .sec-sub-ttl::after {
	content: "";
	display: block;
	position: absolute;
	left: calc(50% - 40px);
	bottom: -39px;
	width: 0;
	border: 40px solid transparent;
	border-top-color: #FF6E00;
	border-bottom-width: 0;
}
.model-footer .sec-sub-ttl h2 {
	font-size: 4.8rem;
	text-align: center;
	color: #FFF;
}
.model-footer .sec-sub-ttl h2 span {
	color: #FFF100;
}



/* option
=============================================== */

#option #option-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}

.option-list {
	margin: 0;
}
.opt-fee {
	margin: 15px 0;
	width: 100%;
	border-left: 1px solid #CCD4E3;
	border-bottom: 1px solid #CCD4E3;
}
.opt-fee th,
.opt-fee td {
	padding: 8px 10px;
	border-right: 1px solid #CCD4E3;
}
.opt-fee th:nth-child(1) {
	width: 200px;
}
.opt-fee th:nth-child(3) {
	width: 250px;
}
.opt-fee thead th {
	padding: 15px;
	font-size: 1.8rem;
	color: #FFF;
	background: #252F43;
}
.opt-fee tbody tr {
	border-top: 1px solid #CCD4E3;
}
.opt-fee tbody tr:nth-child(odd) {
	background: #F4FDFF;
}
.opt-fee tbody tr:nth-child(even) {
	background: #FFF;
}
.opt-fee tbody th {
	font-size: 1.6rem;
	line-height: 1.6;
	font-weight: bold;
}
.opt-fee tbody td {
	font-size: 1.4rem;
	line-height: 1.6;
}
.opt-fee tbody td:nth-child(3) {
	text-align: center;
}





/* app
=============================================== */

#app #app-inner {
	margin: 0 auto;
	padding: 30px 0 50px;
	max-width: 700px;
}
.form {
	width: 100%;
}
.form dl {
	display: flex;
	margin: 0;
	padding: 30px 0;
	border-top: 1px solid #CCC;
}
.form dl:first-child {
}
.form dl dt,
.form dl dd {
	font-size: 1.4rem;
	line-height: 1.6;
}
.form dl dt {
	width: 250px;
	font-weight: bold;
}
.form dl dt span {
	display: inline-block;
	margin-left: 8px;
	padding: 2px 5px 1px;
	font-size: 1.2rem;
	background: #C00;
	color: #FFF;
}
.form dl dd {
	width: 100%;
}
.form dl dd .form-example {
	padding-top: 5px;
	color: #999;
}
.form dl dd input {
	width: 100%;
	padding: 5px;
	border: 1px solid #CCC;
	border-radius: 2px;
	font-size: 1.4rem;
}
.form dl.tel-number dd input {
	width: 12em;
}
.form dl.zipcode dd input {
	width: 8em;
}
.form dl.enquete dd ul {
	display: flex;
	flex-wrap: wrap;
}
.form dl.enquete dd ul li {
	width: 100%;
	padding: 10px 0;
}
.form dl.enquete dd ul li:first-child {
	padding-top: 0;
}
.form dl.enquete dd ul li:last-child {
	padding-bottom: 0;
}
.form dl.enquete dd ul li b,
.form dl.enquete dd ul li label {
	display: inline-block;
	margin-right: 15px;
}
.form dl.enquete dd input {
	width: auto;
	margin-right: 5px;
}
.form dl.contact-note dd textarea {
	width: 100%;
	height: 8em;
	padding: 5px;
	border: 1px solid #CCC;
	border-radius: 2px;
	font-size: 1.4rem;
}
.form .form-submit {
	padding: 35px 0;
	text-align: center;
}
.form .form-submit button {
	padding: 20px 50px;
	border: none;
	border-radius: 10px;
	font-size: 1.8rem;
	color: #FFF;
	background: #2F68AF;
	cursor: pointer;
	transition: .1s ease;
}
.form .form-submit button:hover {
	opacity: 0.7;
	transition: .1s ease;
	text-decoration: none;
}


/* faq / contact
=============================================== */

#faq #faq-inner,
#contact #contact-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 800px;
}
.faq-list {
	margin-bottom: 50px;
}
.faq-list dl {
	padding: 25px 0;
	border-bottom: 1px solid #CCC;
}
.faq-list dl dt {
	position: relative;
	display: inline-block;
	padding-left: 35px;
	font-size: 2.4rem;
	color: #2A5795;
}
.faq-list dl dt::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 26px;
	height: 26px;
	background: url(../img/faq/icon_q.svg) no-repeat 0 50%;
}
.faq-list dl dd {
	position: relative;
	margin-top: 25px;
	padding-left: 35px;
	font-size: 1.8rem;
	line-height: 1.6;
	color: #111;
}
.faq-list dl dd::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 26px;
	height: 26px;
	background: url(../img/faq/icon_a.svg) no-repeat 0 50%;
}
.faq-list dl dd p {
	margin-bottom: 10px;
}
#contact #contact-inner .section-area .contact-freedial {
	text-align: center;
}
#contact #contact-inner .section-area .contact-freedial img {
	height: 80px;
}




/* company
=============================================== */

#company #company-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}
#company-profile {
	margin: auto;
	width: 800px;
	max-width: 100%;
}
#company-profile th,
#company-profile td {
	padding: 25px 15px 23px;
	border-top: 1px solid #CCC;
	font-size: 1.6rem;
	line-height: 1.6;
}
#company-profile tr:first-child th,
#company-profile tr:first-child td {
	border: none;
}
#company-profile th {
	text-align: left;
	color: #252F43;
}



/* privacy
=============================================== */

#privacy #privacy-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 1000px;
}



/* security
=============================================== */

#security #security-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 800px;
}
#security #security-inner div.txt-area p:first-child {
	font-size: 1.8rem;
	text-align: center;
}



/* sitemap
=============================================== */

#sitemap #sitemap-inner {
	margin: 0 auto;
	padding: 50px 0;
	max-width: 800px;
}
.sitemap-list {
	border-bottom: 1px solid #CCC;
}
.sitemap-list li {
	padding: 25px 0;
	border-top: 1px solid #CCC;
}
.sitemap-list li a {
	padding-left: 35px;
	font-size: 1.8rem;
	color: #252F43;
	text-decoration: underline;
	background: url(../img/common/icon_carrow_r.svg) 5px 50% no-repeat;
	background-size: 18px 18px;
}
.sitemap-list li a:hover {
	text-decoration: none;
}


/* sub page
=============================================== */

#not-found {
	padding: 100px 0;
}
#not-found p {
	margin: 30px 0;
	font-size: 1.8rem;
	line-height: 1.8;
	text-align: center;
}



/* margin
=============================================== */

.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }

.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }



/* radius
=============================================== */

.radx2 { border-radius: 2px !important; }
.radx4 { border-radius: 4px !important; }
.radx6 { border-radius: 6px !important; }
.radx8 { border-radius: 8px !important; }
.radx10 { border-radius: 10px !important; }
.radx25 { border-radius: 25px !important; }
.radx100 { border-radius: 100% !important; }



/* ===============================================
Set tablet 1024px
=============================================== */

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



/* base
=============================================== */

body {
	min-width: 100%;
}
.txt-list li, .dec-list li, .ex-list li {
	font-size: 1.4rem;
}



/* header
=============================================== */

#global-header {
	padding: 0;
	border-bottom: none;
}
#header-inner {
	display: block;
	margin: 0;
	padding: 0;
	width: auto;
}
#global-header #logo,
#global-header #header-freedial,
#global-header #header-contact {
	display: none;
}



/* navigation
=============================================== */

#pc-nav {
	display: none;
}
#sp-nav {
	display: block;
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100%;
	padding: 15px 0;
	background-color: #FFF;
	transition: .2s;
	-webkit-backface-visibility: hidden;
}
#sp-nav.hide {
	transition: .2s;
    transform: translateY(-100%);
}
#sp-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	padding: 0;
}
#sp-logo a {
	display: inline-block;
}
#sp-logo img {
	height: 50px;
}
#overlay_menu {
	z-index: 19;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	transition: 0.3s;
	padding-top: 52px;
	visibility: hidden;
	background-color: #FFF;
}
#overlay_menu ul {
	margin: 0 15px;
}
#overlay_menu li {
	padding: 15px 0;
	text-align: center;
	line-height: 1.5;
}
#overlay_menu li a {
	display: inline-block;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.7;
	text-decoration: none;
	color: #252F43;
}
#overlay_menu li a span {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
}
#overlay_menu li a:hover,
#overlay_menu li.current a {
	color: #8F97A6;
}
.open #overlay_menu {
	opacity: 1;
	transition: 0.1s;
	visibility: visible;
}
#overlay_btn, #overlay_btn span {
	z-index: 20;
	top: 15px;
	right: 15px;
	position: fixed;
	transition: 0.3s;
}
#overlay_btn {
	width: 50px;
	height: 50px;
	padding: 10px;
	border-radius: 4px;
	cursor: pointer;
	background-color: #252F43;
}
#overlay_btn span {
	position: absolute;
	left: 10px;
	width: 30px;
	height: 3px;
	border-radius: 2px;
	background-color: #FFF;
	transition: 0.3s;
}
.open #overlay_btn span {
	background-color: #FFF;
} 
#overlay_btn span:nth-of-type(1) { top: 10px;}
#overlay_btn span:nth-of-type(2) { top: 20px;}
#overlay_btn span:nth-of-type(3) { top: 30px;}

#overlay_btn p {
	position: absolute;
	left: 0;
	top: 36px;
	width: 100%;
	font-size: 1.0rem;
	color: #FFF;
	text-align: center;
}
.open #overlay_btn span:nth-of-type(1) {
	top: 20px;
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.open #overlay_btn span:nth-of-type(2) {
	opacity: 0;
}
.open #overlay_btn span:nth-of-type(3) {
	top: 20px;
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#nav-info {
	margin: 30px 15px;
	padding: 10px 15px;
	border: 2px solid #252F43;
	border-radius: 4px;
	background-color: #FFF;
}
#nav-info p#nav-logo img {
	width: 70%;
}
#nav-info p#nav-free {
	margin-bottom: 15px;
}
#nav-info p#nav-free img {
	width: 60%;
}
#nav-info p {
	margin: 12px 0;
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: center;
}




/* footer
=============================================== */


#footer-inner  {
	padding: 20px 0;
	width: auto;
}
#footer-info {
	display: block;
	margin: 35px 0;
}
#footer-info dt {
	margin: 0 0 15px;
	padding: 0;
	border-right: none;
	text-align: center;
}
#footer-info dt img {
	height: 60px;
}
#footer-info dd {
	font-size: 1.4rem;
}
.fnav {
	display: block;
	margin: 35px 0;
}
.fnav li {
	margin: 20px 0;
	padding: 0;
	text-align: center;
}
.fnav li a {
	font-size: 1.6rem;
}
.fnav li:nth-child(3) a img {
	padding-bottom: 0;
}
.fnav li a:hover {
	opacity: .7;
}
#copyright {
	font-size: 1.4rem;
	text-align: center;
}



/* page
=============================================== */

#page-header {
	padding: 120px 0 50px;
	background: #EAF2EF;
}
#page-header h1 {
	font-size: 3.0rem;
}


/* home
=============================================== */

#eye {
	display: flex;
	align-items: center;
	margin-top: 80px;
	background: #FFF url(../img/index/bg_eye.jpg) no-repeat 100% 50%;
}
#eye-inner {
	max-width: none;
	margin: 0 0 0 25px;
	padding-top: 0;
}
#eye-inner img {
	object-fit: cover;
	height: 120px;
}
#top-msg-inner {
	margin: 0 20px;
	padding: 30px 15px;
	max-width: none;
}
#top-msg-inner h2 {
	z-index: 1;
	line-height: 1.8;
	font-size: 3.6rem;
}
#top-msg-inner h2 span {
	font-size: 4.0rem;
}
#top-msg-inner h2 span:nth-of-type(2) {
}
#top-msg-inner h2::before,
#top-msg-inner h2::after {
	width: 100px;
	height: 100px;
	z-index: -1;
}
#top-msg-inner h2::before {
	top: 0;
	left: 0;
	background: url(../img/index/icon_ope01.png) no-repeat;
	background-size: cover;
}
#top-msg-inner h2::after {
	top: 0;
	right: 0;
	background: url(../img/index/icon_ope02.png) no-repeat;
	background-size: cover;
}
#top-msg-inner p {
	margin-bottom: 20px;
	font-size: 3.6rem;
}
#top-msg-inner p:nth-of-type(1) {
	font-size: 3.6rem;
}
#top-msg-inner p:nth-of-type(2) span {
	font-size: 3.6rem;
}
#top-msg-btn {
	margin: 35px 20px;
}
#top-price-inner {
	margin: auto;
	padding: 50px 15px;
	max-width: none;
}
#top-price-inner h2 {
	margin-bottom: 35px;
	font-size: 3.6rem;
}
.price-list {
	flex-wrap: wrap;
	margin: 75px -15px 0;
	padding: 0 15px;
	border: none;
}
.price-list .course {
	margin: 0 15px;
	width: calc(50% - 30px);
	max-width: none;
	border: 1px solid #CCD4E3 !important;
}
.price-list .course:nth-child(3),
.price-list .course:nth-child(4) {
	margin-top: 75px;
}
.price-list .course.full h3 {
	transform: none;
}
.price-list .course ul li.spot {
	margin: 0 -1px -1px;
	border: 3px solid #252F43 !important;
}


#top-option-inner {
	margin: auto;
	padding: 50px 15px;
	max-width: none;
}
#top-option-inner h2 {
	margin-bottom: 20px;
	font-size: 3.6rem;
}
#top-option-inner .sub-cap {
	margin-bottom: 25px;
	font-size: 1.6rem;
}
#top-option-list {
	margin: 35px 0;
}
#top-option-list li {
	width: calc(33.333% - 30px);
	margin: 0 15px 30px;
	padding: 30px;
	box-shadow: 0 0 15px rgba(65,211,189,0.1);
	background: #FFF;
}
#top-option-list li dl dt {
	font-size: 1.6rem;
}
#top-option-list li dl dt img {
	height: 60px;
}
#top-option-list li dl dd {
	font-size: 1.4rem;
}
#page-app-inner {
	margin: auto;
	padding: 50px 0;
	max-width: none;
}
#page-app-inner h2 {
	margin-bottom: 25px;
	font-size: 3.6rem;
}
#page-app-inner #btn-contact {
	flex-wrap: wrap;
}
#page-app-inner #btn-contact li {
	width: 100%;
	margin: 20px 0;
	text-align: center;
}
#page-app-inner #btn-contact li:first-child a {
	font-size: 1.6rem;
}
#page-app-inner #btn-contact li:first-child a img {
	height: 50px;
}
#page-app-inner #btn-contact li:last-child a {
	padding-left: 25px;
	padding-right: 25px;
}
#page-app-inner #btn-contact li:last-child a span {
	padding: 0 30px;
}



/* tel service
=============================================== */

#tel-service #tel-service-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#tel-service .section-area {
	margin-bottom: 50px;
}



/* office service
=============================================== */

#office-service #office-service-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#office-service .section-area {
	margin-bottom: 50px;
}
#office-service #office-service-inner .price-list {
}
.price-list .course.office-regA,
.price-list .course.office-regB,
.price-list .course.office-long {
	width: calc(50% - 30px);
	max-width: none;
}


/* callcenter service
=============================================== */

#cc-service #cc-service-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#cc-service .section-area {
	margin-bottom: 50px;
}

#cc-service .cc-point {
	max-width: none;
	margin: auto;
}
#cc-service .price-list .course {
	width: calc(50% - 30px);
	max-width: none;
}


/* price list
=============================================== */

#price-list #price-list-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#price-list .section-area {
	margin-bottom: 50px;
}



/* model
=============================================== */

#model {
	padding-top: 0;
}
#model .model-sec-inner {
	margin: 0 auto;
	padding: 50px 15px;
	max-width: none;
}
.model-sec01 {
	margin: 0;
}
.sec-mv01 p:nth-child(1) {
	position: absolute;
	top: -35px;
	left: 25px;
	width: 300px;
	height: 300px;
}
.model-sec02 {
	margin: 0;
}
.model-sec02 .sec-sub-ttl h2 {
	font-size: 3.2rem;
}
.model-sec02 .model-sec-inner h2 {
	margin-bottom: 30px;
	text-align: center;
}
.ttl-ribbon::before {
	border-width: 40px 0 40px 40px;
}
.ttl-ribbon::after {
	border-width: 40px 40px 40px 0;
}
.model-sec03 {
	margin: 0;
}
.model-sec03 .sec-sub-ttl h2 {
	font-size: 3.2rem;
}
.model-sec04 {
	margin: 0;
}
.model-sec05 {
	margin: 0;
}
#model .model-sec05 .model-sec-inner {
	padding-bottom: 15px;
}
.model-footer {
	margin: 0;
}
.model-footer .sec-sub-ttl {
	padding: 25px 0;
}
.model-footer .sec-sub-ttl::after {
	content: "";
	display: block;
	position: absolute;
	left: calc(50% - 20px);
	bottom: -19px;
	width: 0;
	border: 20px solid transparent;
	border-top-color: #FF6E00;
	border-bottom-width: 0;
}
.model-footer .sec-sub-ttl h2 {
	font-size: 3.2rem;
}



/* option
=============================================== */

#option #option-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.scroll {
	overflow: auto;
	width: 99%;
}
.scroll .opt-fee {
	width: 100%;
	table-layout: fixed;
}
.opt-fee th,
.opt-fee td {
	padding: 8px 5px;
}
.opt-fee th:nth-child(1) {
	width: 200px;
}
.opt-fee th:nth-child(2) {
	width: 250px;
}
.opt-fee th:nth-child(3) {
	width: 250px;
}
.opt-fee th:nth-child(4) {
	width: 300px;
}
.opt-fee thead th {
	padding: 15px;
	font-size: 1.6rem;
}
.opt-fee tbody th {
	font-size: 1.4rem;
}
.opt-fee tbody td {
	font-size: 1.2rem;
}



/* app
=============================================== */

#app #app-inner {
	margin: 0 auto;
	padding: 50px 15px;
	max-width: 700px;
}
.form {
	width: auto;
}



/* faq / contact
=============================================== */

#faq #faq-inner,
#contact #contact-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.faq-list {
	margin-bottom: 50px;
}
.faq-list dl {
	padding: 20px 0;
}
.faq-list dl dt {
	font-size: 2.0rem;
}
.faq-list dl dt::before {
	width: 22px;
	height: 22px;
}
.faq-list dl dd {
	position: relative;
	margin-top: 25px;
	padding-left: 35px;
	font-size: 1.6rem;
}
.faq-list dl dd::before {
	width: 22px;
	height: 22px;
}
.faq-list dl dd p {
	margin-bottom: 10px;
}
#contact #contact-inner .section-area .contact-freedial img {
	height: 60px;
}




/* company
=============================================== */

#company #company-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#company-profile {
	width: 100%;
}
#company-profile th,
#company-profile td {
	padding: 20px 10px 18px;
	font-size: 1.4rem;
}




/* privacy
=============================================== */

#privacy #privacy-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}



/* security
=============================================== */

#security #security-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#security #security-inner div.txt-area p:first-child {
	font-size: 1.6rem;
	text-align: center;
}



/* sitemap
=============================================== */

#sitemap #sitemap-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.sitemap-list li {
	padding: 20px 0;
}
.sitemap-list li a {
	padding-left: 30px;
	font-size: 1.6rem;
}

















}



/* ===============================================
Set smartphone 599px
=============================================== */

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

/* link
=============================================== */

a[href^="tel:"] {
    pointer-events: auto;
}



/* base
=============================================== */

body {
	min-width: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
.pc, br.pc {
	display: none;
}
.sp {
	display: block;
}
br.sp {
	display: inline-block;
}
.txt-list, .dec-list {
	margin: 1em 0 3em 1.8em;
}
.txt-list li, .dec-list li {
	margin: .5em 0;
	font-size: 1.4rem;
}
.txt-list li {
	list-style: circle;
}
.dec-list li {
	list-style: decimal;
}
.ex {
	margin: 1em 0;
}
.ex li {
	margin: .5em 0;
	padding-left:  1em;
	text-indent: -1em;
	font-size: 1.4rem;
	line-height: 1.8;
}



/* footer
=============================================== */



#footer-inner  {
	padding: 20px 0;
	width: auto;
}
#footer-info {
	display: block;
	margin: 35px 0;
}
#footer-info dt {
	margin: 0 0 15px;
	padding: 0;
	border-right: none;
	text-align: center;
}
#footer-info dt img {
	height: 60px;
}
#footer-info dd {
	font-size: 1.4rem;
}
.fnav {
	display: block;
	margin: 35px 0;
}
.fnav li {
	margin: 25px 0;
}
.fnav li a {
	font-size: 1.6rem;
}
.fnav li:nth-child(3) a img {
	padding-bottom: 0;
}
.fnav li a:hover {
	opacity: .7;
}
#copyright {
	font-size: 1.4rem;
	text-align: center;
}


/* page
=============================================== */

.totop {
	margin: 0 0 50px 0;
	text-align: center;
}
#page-header {
	padding: 110px 0 30px;
}
#page-header h1 {
	line-height: 1.7;
	font-size: 2.4rem;
}
.section-area {
	padding-bottom: 15px;
}
.txt-area {
	padding-bottom: 10px;
}
.txt-area p {
	margin-bottom: 1em;
	font-size: 1.4rem;
	line-height: 1.6;
}
.h2-01 {
    margin-bottom: 35px;
    border-left: 3px solid #252F43;
    padding-left: 10px;
	font-size: 2.0rem;
}
.h2-01 span {
	padding-left: 1em;
	font-size: 1.6rem;
}
.h2-02 {
    margin-bottom: 35px;
	font-size: 2.0rem;
}
.h3-01 {
	margin-bottom: 20px;
	font-size: 1.6rem;
	color: #111;
}
.h4-01 {
	margin: .75em 0;
	font-size: 1.4rem;
}

.btn01 {
	margin: 25px 0;
	text-align: center;
}
.btn01 a {
	display: block;
	padding: 25px 25px;
	font-size: 1.8rem;
}
.btn01 a span {
	display: block;
	padding: 5px 20px;
}
.btn-col2 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.btn-col2 div {
	width: 100%;
}
.btn-col2 div:nth-of-type(1) {
	margin-right: 0;
}
.btn-col2 div:nth-of-type(2) {
	margin-left: 0;
}




/* home
=============================================== */

#eye {
	align-items: flex-end;
	height: calc(80vh);
	background: #FFF url(../img/index/bg_eye_sp.jpg) no-repeat 70% 50%;
	background-size: cover;
}
#eye-inner {
	margin: 0 0 30px;
	padding: 0 15px;
	width: 100%;
	text-align: center;
}
#eye-inner img {
	width: 100%;
	max-width: none;
	height: auto;
}
#eye-inner div:nth-of-type(2) {
	padding: 25px 0 0 0;
}




.sec-sttl {
	padding: 15px 0;
	text-align: center;
	font-weight: bold;
	color: #FFF;
}
.sec-sttl.fs30 { font-size: 1.8rem; }
.sec-sttl.fs40 { font-size: 2.0rem; }
.sec-sttl.fs50 { font-size: 2.2rem; }
.sec-sttl.fs60 { font-size: 2.4rem; }
.sec-sttl.fs70 { font-size: 2.6rem; }

.section01 {
	padding: 35px 0;
}
.section01 div:nth-of-type(2) {
	margin: 35px 0;
}
.section02 .sec02ttl {
	padding: 20px 0;
	background: #D34141;
	text-align: center;
	line-height: 1.4;
}
.section02 .sec02ttl .inner {
	position: relative;
	margin: auto;
}
.section02 .sec02ttl .inner span {
	display: block;
	color: #FFF;
}
.section02 .sec02ttl span:nth-of-type(1) {
	position: absolute;
	top: calc(50% - 9vw);
	left: 10px;
}
.section02 .sec02ttl span:nth-of-type(1) img {
	width: auto;
	height: 18vw;
}
.section02 .sec02ttl span:nth-of-type(2),
.section02 .sec02ttl span:nth-of-type(4) {
	font-size: 2.0rem;
}
.section02 .sec02ttl span:nth-of-type(3) {
	font-size: 1.6rem;
}
.section02 .sec02body {
	padding: 25px 0 0 0;
}
.section02 .sec02body div:nth-of-type(1) {
	width: 45%;
}
.section02 .sec02body div:nth-of-type(2) {
	width: 55%;
	padding-bottom: 25px;
}
.section02 .sec02body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section03 .sec03body {
	padding: 25px 0 0 0;
}
.section03 .sec03body div:nth-of-type(1) {
	width: 45%;
}
.section03 .sec03body div:nth-of-type(2) {
	width: 55%;
	padding-bottom: 25px;
}
.section03 .sec03body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section04 .sec04body {
	padding: 25px 0 0 0;
}
.section04 .sec04body div:nth-of-type(1) {
	width: 45%;
}
.section04 .sec04body div:nth-of-type(2) {
	width: 55%;
	padding-bottom: 25px;
}
.section04 .sec04body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}

.section05 {
	padding: 25px 15px 75px;
}
.section05 .sec05-txt {
	margin-bottom: 25px;
	font-size: 2.0rem;
	line-height: 1.6;
}
.section05 .inner {
	flex-wrap: wrap;
}
.section05 .course {
	margin: 0 0 35px 0;
	padding: 0 0 25px 0;
	width: 100%;
}
.section05 .course-name {
	padding: 12px 12px;
	font-size: 3.0rem;
}
.section05 .course-name span {
	font-size: 2.0rem;
}
.section05 .course-osusume {
	position: absolute;
	right: 20px;
	top: -20px;
}
.section05 .course-osusume img {
	object-fit: cover;
	height: 40px;
}
.section05 .service-time {
	padding: 20px 0 0;
}
.section05 .service-time p {
	margin: .5em 0;
	font-size: 1.8rem;
}
.section05 .service-time .time {
	font-size: 3.6rem;
	line-height: 1.0;
}
.section05 .service-time .time span {
	font-size: 1.6rem;
	font-weight: normal;
}
.section05 .course-fee span:nth-of-type(1) {
	margin-bottom: 5px;
	font-size: 2.0rem;
}
.section05 .course-fee span:nth-of-type(2) {
	font-size: 6.0rem;
}
.section05 .course-fee span:nth-of-type(3) {
	font-size: 1.6rem;
}
.section05 .course-fee span:nth-of-type(4) {
	margin-top: 5px;
	font-size: 2.0rem;
}
.section06 .sec06ttl {
	padding: 20px 0;
	background: #419AD3;
	text-align: center;
	line-height: 1.4;
}
.section06 .sec06ttl .inner {
	position: relative;
	margin: auto;
}
.section06 .sec06ttl .inner span {
	display: block;
	color: #FFF;
}
.section06 .sec06ttl span:nth-of-type(1) {
	position: absolute;
	top: calc(50% - 6vw);
	left: 15px;
}
.section06 .sec06ttl span:nth-of-type(1) img {
	width: auto;
	height: 12vw;
}
.section06 .sec06ttl span:nth-of-type(2) {
	font-size: 2.0rem;
	font-weight: bold;
}
.section06 .sec06ttl span:nth-of-type(3) {
	font-size: 1.6rem;
}
.section06 .sec06ttl p {
	color: #FFF;
}
.section06 .sec06ttl p:nth-of-type(1),
.section06 .sec06ttl p:nth-of-type(3) {
	font-size: 1.8rem;
}
.section06 .sec06ttl p:nth-of-type(2) {
	margin: 10px 0;
	font-size: 1.6rem;
}
.section06 .sec06eye {
	padding: 35px 0 35px;
	background-position: 50% 51%;
}
.section06 .sec06eye p {
	font-size: 2.0rem;
	line-height: 1.6;
}
.section06 .sec06eye p:nth-of-type(2) {
	margin: 15px 0 20px;
}
.section06 .sec06body {
	padding: 35px 0 0 0;
}
.section06 .sec06body p {
	margin-bottom: 25px;
	font-size: 2.0rem;
}
.section06 .sec06body div:nth-of-type(1) {
	width: 45%;
}
.section06 .sec06body div:nth-of-type(2) {
	width: 55%;
	padding-bottom: 25px;
}
.section06 .sec06body div:nth-of-type(2) img:nth-of-type(1) {
	margin-bottom: 20px;
}
.section07 .inner {
	margin: auto;
	padding: 25px 0;
}
.section07 .inner p {
	border: 2px solid #D34141;
	border-radius: 4px;
	margin: 0 15px;
	padding: 15px 0;
	font-size: 1.8rem;
}
.section07 .inner ul {
	margin: 15px 15px 0;
}
.section07 .inner ul li {
	margin: 0;
	padding: 12px 0 12px 30px;
	border-bottom: 2px solid #CCC;
	font-size: 1.6rem;
	line-height: 1.6;
	background: url(../img/index/icon_check_skblue.png) 0 50% no-repeat;
	background-size: auto 24px;
}

.section08 {
	padding: 35px 15px 0;
	background: linear-gradient(90deg, rgba(223,244,249,1) 0%, rgba(242,223,249,1) 100%);
}
.section08 .inner {
	margin: 0;
	flex-wrap: wrap;
}
.section08 .course {
	position: relative;
	margin: 0 0 35px 0;
	padding: 0 0 25px 0;
	width: 100%;
}
.section08 .course-name {
	padding: 12px 12px;
	font-size: 2.8rem;
}
.section08 .course-name span {
	font-size: 2.0rem;
}
.section08 .service-time {
	padding: 5px 0 0;
}
.section08 .service-time p {
	margin: .5em 0;
	font-size: 1.8rem;
}
.section08 .service-time .time {
	font-size: 3.6rem;
	line-height: 1.0;
}
.section08 .service-time .time span {
	font-size: 1.6rem;
}
.section08 .course-fee {
	text-align: center;
}
.section08 .course-fee span {
	color: #333;
}
.section08 .course-fee span:nth-of-type(1) {
	margin-bottom: 5px;
	font-size: 2.0rem;
}
.section08 .course-fee span:nth-of-type(2) {
	font-size: 6.0rem;
}
.section08 .course-fee span:nth-of-type(3) {
	font-size: 1.6rem;
	color: #E51373;
}
.section08 .course-fee span:nth-of-type(4) {
	margin-top: 5px;
	font-size: 2.0rem;
}





#top-replay {
	padding: 50px 0 50px;
}
#top-replay .inner {
	margin: auto;
	padding: 0 15px;
	max-width: none;
}
#top-replay .inner .row {
	margin: 0;
	align-items: center;
}
#top-replay .inner .row .left,
#top-replay .inner .row .right {
	margin: 15px 0;
	padding: 0;
	width: 100%;
}

#top-replay .top-replay-header-text {
	margin-bottom: 35px;
	font-size: 2.6rem;
}
#top-replay .top-replay-service {
	padding: 20px;
	border: 2px solid #41D3BD;
}
#top-replay .top-replay-service-title {
	margin-bottom: 25px;
	font-size: 1.8rem;
}
#top-replay .top-replay-service-title:nth-of-type(1) {
	font-size: 1.8rem;
}
#top-replay .top-replay-service-title img {
	margin-right: 15px;
	height: 30px;
}
#top-replay .top-other-service {
}
#top-replay .top-other-service-title {
	margin-bottom: 15px;
	padding: 15px;
	font-size: 1.8rem;
}
#top-replay .top-replay-service-body p,
#top-replay .top-other-service-body p {
	margin-bottom: 25px;
	font-size: 1.6rem;
}
#top-replay .top-replay-service-body p:last-child,
#top-replay .top-other-service-body p:last-child,
#remote-setting p:last-child {
	margin: 0;
}
#remote-setting {
	margin-top: 35px;
	padding: 20px;
	border: 2px solid #15436F;
}
#remote-setting p {
	margin-bottom: 15px;
	font-size: 1.6rem;
	text-align: left;
}
#remote-setting p:nth-child(1) {
	flex-wrap: wrap;
	font-size: 1.8rem;
}
#remote-setting p:nth-child(1) span {
	padding: 0 15px 15px;
}
#remote-setting p:nth-child(1) span img {
	height: 40px;
}






#top-price-inner {
	padding: 35px 15px;
}
#top-price-inner h2 {
	margin-bottom: 25px;
	font-size: 2.0rem;
}
.price-list {
	margin: 75px 0 0;
	padding: 0;
}
.price-list .course,
.price-list .course.office-regA,
.price-list .course.office-regB,
.price-list .course.office-long {
	margin: 0 0 50px;
	width: 100%;
}
.price-list .course h3 {
	padding: 15px;
	font-size: 1.8rem;
}
.price-list .course h3 span {
	width: 25px;
	height: 25px;
	line-height: 25px;
	font-size: 1.2rem;
}
.price-list .course:nth-child(3) {
	margin-top: 0;
}
.price-list .course:nth-child(4) {
	margin: 40px 0 0;
}
.price-list .course.full h3 {
	transform: none;
}
.price-list .course.short h3 div {
	top: -45px;
	left: calc(100% - 140px);
	transform:rotate(10deg);
}
.price-list .course.short .icon-good,
.price-list .course.regB .icon-good {
	right: 20px;
	width: 80px;
}
.price-list .course.regA .icon-smile,
.price-list .course.full .icon-smile {
	right: 20px;
	width: 70px;
}

#top-option-inner {
	padding: 35px 15px;
}
#top-option-inner h2 {
	margin-bottom: 20px;
	font-size: 2.0rem;
}
#top-option-inner .sub-cap {
	margin-bottom: 20px;
	font-size: 1.4rem;
	line-height: 1.6;
}
#top-option-list {
	flex-wrap: wrap;
	margin: 20px 0;
}
#top-option-list li {
	width: 100%;
	margin: 0 0 20px;
	padding: 30px;
	box-shadow: 0 0 15px rgba(65,211,189,0.1);
}
#top-option-list li dl dt {
	font-size: 1.6rem;
}
#top-option-list li dl dt img {
	height: 60px;
}
#top-option-list li dl dd {
	font-size: 1.4rem;
}
#page-app-inner {
	padding: 35px 15px 15px;
}
#page-app-inner h2 {
	margin-bottom: 10px;
	font-size: 2.0rem;
}
#page-app-inner #btn-contact {
	flex-wrap: wrap;
}
#page-app-inner #btn-contact li {
	width: 100%;
	margin: 20px 0;
	text-align: center;
}
#page-app-inner #btn-contact li:first-child a {
	font-size: 1.6rem;
}
#page-app-inner #btn-contact li:first-child a img {
	height: 50px;
}
#page-app-inner #btn-contact li:last-child a {
	padding: 25px;
	font-size: 1.8rem;
}
#page-app-inner #btn-contact li:last-child a span {
	padding: 5px 20px;
}






/* tel service
=============================================== */

#tel-service .section-area {
	margin-bottom: 25px;
}
.tel-header {
	padding-top: 30px;
}
.tel-header h2 {
	margin-bottom: 50px;
}
.tel-header {
	padding-top: 15px;
}
.tel-header h2 div {
	margin-bottom: 0px;
}
.tel-header h2 div::before,
.tel-header h2 div::after {
	top: calc(-30px / 2);
	width: 60px;
	height: 60px;
}
.tel-header h2.t01 div::before {
	left: -70px;
}
.tel-header h2.t01 div::after {
	right: -70px;
}
.tel-header h2.t02 {
	padding-left: 1em;
}
.tel-header h2.t02 div::before {
	left: -70px;
}
.page-tel .price-list,
.page-office .price-list,
.page-pricelist .price-list,
.page-callcenter .price-list {
	margin-top: 50px;
}

.page-tel .price-note,
.page-office .price-note,
.page-pricelist .price-note
.page-callcenter .price-note {
	margin-bottom: 15px;
}





/* office service
=============================================== */

#office-service .section-area {
	margin-bottom: 25px;
}



/* callcenter service
=============================================== */

#cc-service .section-area {
	margin-bottom: 25px;
}
.cc-header {
	padding-top: 15px;
	padding-top: 30px;
}
.cc-header h2 {
	margin-bottom: 50px;
}
.cc-header h2 div {
	margin-bottom: 0px;
}
.cc-header h2 div::before,
.cc-header h2 div::after {
	top: calc(-30px / 2);
	width: 60px;
	height: 60px;
}
.cc-header h2.t01 div::before {
	left: -70px;
}
.cc-header h2.t01 div::after {
	right: -70px;
}
#cc-service .cc-point {
	padding: 1px 20px;
	border: 2px solid #009890;
}
#cc-service .cc-point p {
	font-size: 1.6rem;
	line-height: 1.7;
}
#cc-service .cc-point p span {
	font-size: 1.4rem;
}
#cc-service .price-list .course {
	width: 100%;
}
#cc-service .section-area .txt-area .text-center {
	text-align: left !important;
}


/* pricelist
=============================================== */

#price-list .section-area .txt-area p {
    font-size: 1.6rem;
}
.pl-header {
	padding-top: 15px;
}
.pl-header h2 div {
	margin-bottom: 0px;
}
.pl-header h2 div::before,
.pl-header h2 div::after {
	top: calc(-30px / 2);
	width: 60px;
	height: 60px;
}
.pl-header h2.pl01 div::before {
	left: -70px;
}
.pl-header h2.pl01 div::after {
	right: -70px;
}



/* model
=============================================== */


#model .model-sec-inner {
	margin: 0;
	padding: 50px 15px;
}
.sec-mv01 p:nth-child(1) {
	position: absolute;
	top: -10px;
	left: 0px;
	width: 120px;
	height: 120px;
    -webkit-backface-visibility: unset;
}
.model-sec02 .sec-sub-ttl,
.model-sec03 .sec-sub-ttl,
.model-footer .sec-sub-ttl {
	padding: 20px 0;
}
.model-sec02 .sec-sub-ttl h2,
.model-sec03 .sec-sub-ttl h2,
.model-footer .sec-sub-ttl h2 {
	font-size: 1.8rem;
}
.model-sec02 .sec-sub-ttl h2 span,
.model-sec03 .sec-sub-ttl h2 span,
.model-footer .sec-sub-ttl h2 span {
	font-size: 1.6rem;
}
.ttl-ribbon::before {
	border-width: 30px 0 30px 20px;
}
.ttl-ribbon::after {
	border-width: 30px 20px 30px 0;
}

.model-sec02 .model-sec-inner h2,
.model-sec03 .model-sec-inner h2,
.model-sec04 .model-sec-inner h2,
.model-sec05 .model-sec-inner h2 {
	margin-bottom: 25px;
}



/* option
=============================================== */

#option #option-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.opt-fee th,
.opt-fee td {
	padding: 10px 5px;
}
.opt-fee th:nth-child(1) {
	width: 150px;
}
.opt-fee th:nth-child(2) {
	width: 200px;
}
.opt-fee th:nth-child(3) {
	width: 180px;
}
.opt-fee th:nth-child(4) {
	width: 200px;
}
.opt-fee thead th {
	padding: 12px;
	font-size: 1.4rem;
}
.opt-fee tbody th {
	font-size: 1.2rem;
}
.opt-fee tbody td {
	font-size: 1.2rem;
}
.opt-fee tbody td:nth-child(3) div {
	margin-top: 10px;
}




/* app
=============================================== */

#app #app-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.form {
	width: 100%;
}
.form dl {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 30px 0;
}
.form dl dt,
.form dl dd {
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.6;
}
.form dl dt {
	width: 100%;
	margin-bottom: 15px;
}
.form dl dd input {
	padding: 8px;
}
.form dl.contact-note dd textarea {
	padding: 8px;
}
.form .form-submit {
	padding: 15px 0;
}
.form .form-submit button {
	display: block;
	width: 100%;
	padding: 20px 50px;
}



/* faq / contact
=============================================== */

#faq #faq-inner,
#contact #contact-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
.faq-list {
	margin-bottom: 35px;
}
.faq-list dl dt {
	font-size: 1.8rem;
}
.faq-list dl dd {
	font-size: 1.4rem;
}
#contact #contact-inner .section-area .contact-freedial img {
	height: 50px;
}




/* company
=============================================== */

#company #company-inner {
	margin: 0;
	padding: 50px 15px;
	max-width: none;
}
#company-profile {
	width: 100%;
}
#company-profile th,
#company-profile td {
	padding: 20px 10px 18px;
	font-size: 1.4rem;
}
#company-profile tr:first-child th,
#company-profile tr:first-child td {
	border: none;
}
#company-profile th {
	width: 25%;
}



/* security
=============================================== */

#security #security-inner div.txt-area p:first-child {
	font-size: 1.5rem;
	text-align: left;
}












}