@charset "utf-8";

#container {
    font-size: 1.6rem;
}
article {
    padding-top: 0;
}
.sp_hide  {
	display: inherit;
} 
.pc_hide {
	display: none;
}

/************************
共通
************************/
.inner {
	box-sizing: border-box;
	width: auto;
	max-width: 1080px;
    margin: 0 auto;
	padding: 0 10px;
}
.cation {
	font-size: 14px;
	text-align: center;
}

/****** btn *******/
.btn:hover{
    opacity: 0.8;
    box-shadow: none;
    top: 4px;
}

.btn.seminarBtn {
    width: 640px;
    height: 80px;
    line-height: 70px;
    font-size: 2.8rem;
    margin: 0 auto;
}
.ctaBtn {
    margin: 60px auto;
}
.ctaBtn p {
	font-size: 2.4rem;
}
.ctaBtn img {
	width: 327px;
}
.btn_back {
    background-color: #E9F9FF;
    padding: 30px 10px 40px;
}
.btn.seminarBtn:before {
    right: 50px;
}
.btn.seminarBtn:after {
    right: 40px;
}
header .inner #nav-input,
header .inner #nav-open {
	display: none;
}

.balloon_inner {
	font-size:2.0rem;
}
.balloon_inner:before {
	bottom: -16px;
    border-width: 0 16px 16px 0;
}
.balloon_inner:after {
	bottom: -12px;
    border-width: 0 12px 12px 0;
}
.txt_present {
	font-size: 2.6rem;
	margin: 30px 0;
}
.txt_present:before,
.txt_present:after {
	position: relative;
	margin: 10px;
}

strong.txt_ucolor {
	border-bottom: solid 12px #A4EAFF;
}

h2 {
	font-size: 3.2rem;
	margin-bottom: 50px;
	font-feature-settings: inherit;
}

h3 {
	font-size: 3.8rem;
	margin-bottom: 60px;
}
h3 small {
	font-size: 2.6rem;
}
/** 吹出し **/
.balloon {
    margin: 0 auto;
    display: block;
    text-align: center;
    padding: 0 0 30px;
}
.balloon_inner {
    display: block;
    max-width: 442px;
    position: relative;
    padding: 0.8rem 0;
	margin-left: auto;
	margin-right: auto;
    margin-bottom: 0.2rem;
    /* border-bottom: 2px solid; */
    color: #0f0f0f;
    font-weight: bold;
    font-size: 2rem;
    border: solid 2px #000;
    background-color: #E9F9FF;
}
.balloon_inner:before,
.balloon_inner:after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
}
.balloon_inner:before {
    bottom: -26px;
    border-style: solid;
    border-color: #0f0f0f transparent transparent transparent;
    border-width: 26px 19px 0 19px;
    transform:rotate(0);
    z-index: auto;
}
.balloon_inner:after {
    bottom: -22px;
    border-style: solid;
    border-color: #E9F9FF transparent transparent transparent;
    border-width: 24px 18px 0 18px;
    z-index: auto;
    transform:rotate(0);
}
.txt_present {
    color: #00538B;
    display: block;
	max-width: 720px;
    font-size: 3rem;
    font-weight: bold;
    margin: 10px auto;
    position: relative;
    text-align: center;
	border-bottom: none;
}
.txt_uline_sp {
    padding-bottom: 3px;
	border-bottom: solid 6px #A4EAFF;
}
.txt_present:before,
.txt_present:after  {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.txt_present:before {
    content: "";
    display: block;
    width: 15px;
    height: 105%;
    top: 5px;
    left: -1vh;
    right: auto;
    border-style: solid;
    border-color: #00538B transparent #00538B #00538B;
    border-width: 3px;
}
.txt_present:after {
    content: "";
    display: block;
    width: 15px;
    height: 105%;
    top: 5px;
    right: -1vh;
    left: auto;
    border-style: solid;
    border-color: #00538B #00538B #00538B transparent;
    border-width: 2px;
}
strong.txt_ucolor {
	border-bottom: none;
}
.txt_get {
    color: #00538B;
    display: block;
	max-width: 600px;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
	margin-left: auto;
	margin-right: auto;
    position: relative;
    padding-bottom: 20px;
}
.txt_get::before {
    content:"＼";
    position: absolute;
    left:0;
    bottom:20px;
    transform: scale(0.7, 1);
    font-weight: bold;
}
.txt_get::after {
    content:"／";
    position: absolute;
    right:0;
    bottom:20px;
    transform: scale(0.7, 1);
    font-weight: bold;
}
/************************
基本パーツ
************************/
header {
	height: 72px;
}
header .inner{
    max-width: 1920px;
    position: relative;
    padding-left: 30px;
}
header nav {
    display: none;
}
header .no1Area {
    width: 170px;
	padding: 0;
	order: 3;
}
header .logo {
	padding-top: 14px;
}
header .logo img {
	height: 32px;
}
#footerWrap #attention {
	width: 100%;
    max-width: 980px;
    margin: 0 auto;
}
/************************
MainVisual
************************/
#mainVisual {
	margin-top: 0;
}
section#mainVisual .mainArea {
	width: 100%;
	height: auto;
    background-size: cover;
	position: relative;
	margin: 0 auto;
	background-color: #008CBC;
	padding-top: 0;
}
#mainVisual .mainAreaInr h1 img{
	/* max-width: 556px; */
    max-width: 432px;
    max-height: 100%;
}
#mainVisual .mainVisualInr {
	max-width: 1430px;
    max-height: 600px;
	position: relative;
	left: -25%;
	transition: all 1s;
}
#mainVisual .mainAreaInr {
	display: flex;
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	position: absolute;
	top:20%;
	left: 0;
	right:0;
	transition: all 1s;
	align-items: center;
	justify-content: flex-end;
}
#mainVisual .mainAreaInr h1 {
	width: 432px;
    height: 366px;
	transition: all 1s;
}
@media screen and (min-width: 735px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 10%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: calc(432px * 0.75);
        height: calc(366px * 0.75);
        transition: all 1s;
    }
}
@media screen and (min-width: 800px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 10%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: calc(432px * 0.8);
        height: calc(366px * 0.8);
        transition: all 1s;
    }
}
@media screen and (min-width: 900px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 12%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: calc(432px * 0.85);
        height: calc(366px * 0.85);
        transition: all 1s;
    }
}
@media screen and (min-width: 1000px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 14%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: calc(432px * 0.9);
        height: calc(366px * 0.9);
        transition: all 1s;
    }
}
@media screen and (min-width: 1080px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 15%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: calc(432px * 0.95);
        height: calc(366px * 0.95);
        transition: all 1s;
    }
}
@media screen and (min-width: 1200px) {
    #mainVisual .mainVisualInr {
        left: -25%;
    }
    #mainVisual .mainAreaInr {
        top: 17%;
        transition: all 1s;
    }
    #mainVisual .mainAreaInr h1 {
        width: 432px;
        height: 366px;
        transition: all 1s;
    }
}
@media screen and (min-width: 1300px) {
    #mainVisual .mainAreaInr {
        top: 23%;
        transition: all 1s;
    }
    #mainVisual .mainVisualInr {
        left: -25%;
    }
}
@media screen and (min-width: 1400px) {
    #mainVisual .mainVisualInr {
        left: -23%;
    }
}
@media screen and (min-width: 1500px) {
    #mainVisual .mainVisualInr {
        left: -17%;
    }
}
@media screen and (min-width: 1600px) {
    #mainVisual .mainVisualInr {
        left: -13%;
    }
}
@media screen and (min-width: 1700px) {
    #mainVisual .mainVisualInr {
        left: -9%;
    }
}
@media screen and (min-width: 1800px) {
    #mainVisual .mainVisualInr {
        left: -5%;
    }
}

/************************
#worry
************************/
#worry .worry_border {
	padding: 60px;
}
#worry h2 {
    padding-bottom: 0;
}
#worry .worry_border ul{
	max-width: 768px;
	margin: auto;
}
#worry .inner .worry_border{
    padding: 0 0 40px;
}
#worry ul li {
    font-size: 24px;
    padding: 30px;
    box-shadow: -3px -3px rgb(0 140 188 / 30%) inset;
}
#worry ul li:nth-child(odd) {
    border-radius: 24px 24px 24px 0;
    max-width: 75%;
    left: 30px;
}
#worry ul li:nth-child(even) {
    border-radius: 24px 24px 0 24px;
    max-width: 75%;
    right: 30px;
}
#worry ul li:nth-child(1),#worry ul li:nth-child(2) {
    margin-bottom: 30px;
}
#worry ul li:nth-child(1) {
    max-width: 330px;
}
#worry ul li:nth-child(1)::before {
    width: 80px;
    height: 140px;
    bottom: 0;
    left: -100px;
}
#worry ul li:nth-child(2) {
    max-width: 250px;
}
#worry ul li:nth-child(2)::before {
    width: 80px;
    height: 140px;
    bottom: 0;
    right: -100px;
}
#worry ul li:nth-child(3) {
    max-width: 290px;
}
#worry ul li:nth-child(3)::before {
    width: 80px;
    height: 140px;
    bottom: -15px;
    left: -100px;
}
#worry h2 {
	font-size: 3rem;
	padding-top: 0;
}
#worry h2:before {
    height: 40px;
}
#worry ul {
	flex-direction: inherit;
	justify-content: space-around;
	flex-wrap: wrap;
    transition: all 1s;
}
#worry ul li {
	width: 40%;
}
@media screen and (min-width: 735px) {
    #worry ul {
        flex-direction: column;
    }
}
@media screen and (min-width: 800px) {
    #worry ul {
        flex-direction: column;
    }
}
@media screen and (min-width: 900px) {
    #worry ul {
        flex-direction: column;
    }
}
@media screen and (min-width: 1000px) {
    #worry ul {
        flex-direction: column;
        transition: all 1s;
    }
}
@media screen and (min-width: 1080px) {
    #worry ul {
        flex-direction: inherit;
        transition: all 1s;
    }
}
@media screen and (min-width: 1200px) {
    #worry ul {
        flex-direction: inherit;
        transition: all 1s;
    }
}
@media screen and (min-width: 1300px) {
    #worry ul {
        flex-direction: inherit;
    }
}
@media screen and (min-width: 1400px) {
}
@media screen and (min-width: 1500px) {
}
@media screen and (min-width: 1600px) {
}
@media screen and (min-width: 1700px) {
}
@media screen and (min-width: 1800px) {
}
#worry .txt_uline {
	font-size: 3.2rem;
	margin: 60px auto 30px;
}
#worry .txt_uline strong {
    background: linear-gradient(transparent 85%, #A4EAFF 0%);
    padding: 0 2px 15px;
    line-height: 1.9;
}

/************************
#seminar
************************/
#seminar h2 {
	font-size: 36px;
    padding-top: 96px;
    padding-bottom: 60px;
    line-height: 1.8;
}
#seminar h2 .txt_cushion {
    background-color: #A4EAFF;
    padding: 12px 9px;
}
#seminar .inner {
    padding-top: 0;
}
#seminar h2 small {
    font-size: 32px;
}
#seminar .inner.color_base {
	max-width: 100%;
}
.seminar_summary ol {
	max-width: 1080px;
	flex-direction: row;
    justify-content: space-between;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 0;
	margin-bottom: 30px;
}
#seminar .seminar_summary{
	padding: 0 40px 40px;
	margin-bottom: 80px;
}
.seminar_summary ol > li {
	max-width: 517px;
	height: 267px;
    border-radius: 12px;
    transform:translate(3px,3px);
    background-color: #F9FDFF;
    margin-bottom: 33px;
    /* padding: 7px 30px 24px 150px; */
    padding: 37px 30px 24px 150px;
    position: relative;
    font-size: 20px;
    font-weight: bold;
    z-index: auto;
}
.seminar_summary ol > li:after {
    content: "";
    display: block;
    background-size: contain;
    position: absolute;
    width: 96px;
    /* height: 96px; */
    height: calc(100% - 3px);
    left: 30px;
    z-index: 10;
}
.seminar_summary ol > li:nth-child(1):after {
    background: url(/g/seminar_beginner/202303/img/section_01.svg) no-repeat center;
    background-size: contain;
}
.seminar_summary ol > li:nth-child(2):after {
    background: url(/g/seminar_beginner/202303/img/section_02.svg) no-repeat center;
    background-size: contain;
}
.seminar_summary ol > li:nth-child(3):after {
    background: url(/g/seminar_beginner/202303/img/section_03.svg) no-repeat center;
    background-size: contain;
}
.seminar_summary ol > li:nth-child(4):after {
    background: url(/g/seminar_beginner/202303/img/section_04.svg) no-repeat center;
    background-size: contain;
}
@media screen and (min-width: 735px) {
    .seminar_summary ol {
        max-width: 80%;
    }
    .seminar_summary ol > li {
        max-width: 100%;
    }
}
@media screen and (min-width: 1200px) {
    .seminar_summary ol {
        max-width: 80%;
    }
    .seminar_summary ol > li {
        max-width: 100%;
    }
}
@media screen and (min-width: 1300px) {
    .seminar_summary ol {
        max-width: 1080px;
    }
    .seminar_summary ol > li {
        max-width: 517px;
    }
}
@media screen and (min-width: 1400px) {
}
@media screen and (min-width: 1500px) {
}
@media screen and (min-width: 1600px) {
}
@media screen and (min-width: 1700px) {
}
@media screen and (min-width: 1800px) {
}
.seminar_summary p {
	font-size: 2.8rem;
    margin-bottom: 20px;
}
.seminar_point h3 small {
	font-size: 2.8rem;
}
.seminar_point h3 {
	font-size: 3.8rem;
}
.seminar_point h3 > strong::after {
    width: 200px;
    height: 12px;
    margin: auto;
    background-image: radial-gradient(#008CBC 12%, transparent 13%);
    background-repeat: repeat-x;
    background-size: 18% 300%;
    background-position: top -12px left 8px;
}
.seminar_point ul {
	flex-wrap: inherit;
	margin-bottom: 60px;
}
.seminar_point ul li {
	width: 240px;
	height: 310px;
	margin: 0 15px 0;
	border-radius: 16px;
	padding: 30px 5px 45px;
    font-size: 20px;
    box-shadow: 0 0 16px rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 735px) {
    .seminar_point ul {
        max-width: 90%;
        flex-wrap: wrap;
        margin-left: auto;
        margin-right: auto;
    }
    .seminar_point ul li {
        width: calc(310px * 0.92);
        height: calc(310px * 0.92);
        margin-bottom: 30px;
        padding: 10px 5px 45px;
    }
}
@media screen and (min-width: 800px) {
    .seminar_point ul {
        max-width: 90%;
        flex-wrap: wrap;
        margin-left: auto;
        margin-right: auto;
    }
    .seminar_point ul li {
        width: calc(310px * 0.92);
        height: calc(310px * 0.92);
        margin-bottom: 30px;
        padding: 10px 5px 45px;
    }
}
@media screen and (min-width: 900px) {
    .seminar_point ul {
        max-width: 80%;
        flex-wrap: wrap;
        margin-left: auto;
        margin-right: auto;
    }
    .seminar_point ul li {
        width: 310px;
        height: 310px;
        margin-bottom: 30px;
        padding: 30px 5px 45px;
    }
}
@media screen and (min-width: 1000px) {
    .seminar_point ul {
        max-width: 80%;
        flex-wrap: wrap;
        margin-left: auto;
        margin-right: auto;
    }
    .seminar_point ul li {
        width: 310px;
        height: 310px;
        margin-bottom: 30px;
    }
}
@media screen and (min-width: 1080px) {
    .seminar_point ul {
        max-width: inherit;
        flex-wrap: nowrap;
    }
    .seminar_point ul li {
        width: 240px;
        height: 310px;
    }
}
.seminar_point ul li:nth-child(1)::before,
.seminar_point ul li:nth-child(2)::before,
.seminar_point ul li:nth-child(3)::before,
.seminar_point ul li:nth-child(4)::before {
    content: "";
    height: 118px;
    background-position: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}
.seminar_point ul li:nth-child(1)::before {
    background: url(/g/seminar_beginner/202303/img/feature_01.png) no-repeat;
    width: 118px;
    background-size: contain;
    margin-bottom: 35px;
}
.seminar_point ul li:nth-child(2)::before {
    background: url(/g/seminar_beginner/202303/img/feature_02.png) no-repeat;
    width: 118px;
    background-size: contain;
    background-position: center;
    margin-bottom: 35px;
}
.seminar_point ul li:nth-child(3)::before {
    background: url(/g/seminar_beginner/202303/img/feature_03.png) no-repeat;
    width: 118px;
    background-size: contain;
    margin-bottom: 15px;
}
.seminar_point ul li:nth-child(4)::before {
    background: url(/g/seminar_beginner/202303/img/feature_04.png) no-repeat;
    width: 118px;
    background-size: contain;
    background-position: center;
    margin-bottom: 35px;
}
#seminar ul li .txt_cushion {
    font-size: 24px;
}
#seminar .seminar_point ul li .txt_uline {
    background: linear-gradient(transparent 86%, #f39800 0%);
    line-height: 1.6;
    color: #468f8c;
    font-size: 1.7rem;
}
.seminar_teacher h3 {
    width: 100%;
    border-bottom: solid 6px #B0E5F4;
    padding-bottom: 36px;
	margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
    color: #008CBC;
    font-size: 36px;
}
.profile {
	padding: 40px 0 0;
}
.profile_data {
	flex-wrap: nowrap;
}
.profile_data .thumb {
	width: 25%;
}
.profile_data .career {
	width: 75%;
	padding-left: 20px;
}
.profile_data .career .name strong {
	font-size: 3.0rem;
}

.profile_gallery {
	flex-wrap: nowrap;
	justify-content: space-between;
}
.profile_gallery img {
	width: 48%;
}
.career .name .name_space {
    display: block;
    margin: 27px 0;
    text-align: left;
}

/************************
#voice
************************/
#voice {
	margin-top: 70px;
}
#voice h2 {
    height: 40px;
	margin-bottom: 30px;
}
.icon-box {
	width: 90px;
	height: 90px;
	border-radius: 50%;
	overflow: hidden;
}
.voice_balloon {
	display: inline-block;
	width: 89%;
	max-width: calc(100% - 95px);
	text-align: left;
	background: #E9F9FF;
	line-height: 2;
	font-size: 16px;
	color: #000;
	padding: 30px;
	position: relative;
	box-shadow: -3px -3px rgb(0 140 188 / 30%) inset;
}
.balloon-set-box.left .voice_balloon {
    border-radius: 24px 24px 24px 0;
}
.balloon-set-box.right .voice_balloon {
    border-radius: 24px 24px 0 24px;
}
/************************
#flow
************************/
#flow {
	margin-top: 0;
	padding-bottom: 20px;
}
#flow h2 {
	padding-bottom: 0;
    font-size: 36px;
}
#flow ol {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content:space-between;
	align-items: flex-start;
}
#flow ol > li {
    display: flex;
	flex-direction: column;
    border-radius: 12px;
    width: 100%;
    transform:translate(3px,3px);
    background-color: #F9FDFF;
    margin-bottom: 10px;
    padding: 16px;
    position: relative;
    font-weight: bold;
    z-index: auto;
}
#flow ol > li:after {
    content: "";
    display: block;
    width: calc(100% - 3px);
    height: calc(100% - 3px);
    border-radius: 12px;
    border: 2px solid #21BBD3;
    background: none;
    position: absolute;
    top: 0;
    left: 0;
    transform:translate(-5px,-5px);
    z-index: auto;
}
#flow ol > li:before {
    content: "";
    display: block;
    background-size: contain;
    position: relative;
    width: 96px;
    height: 96px;
    left: 16px;
    z-index: 10;
}
#flow ol li {
	width: 32%;
}
#flow ol li:before {
	bottom: 0;
	/* transform: rotate(-90deg); */
	top: 0;
	left: auto;
	right: auto;
}
.action {
    color: #008CBC;
    text-align: left;
    padding: 20px 0;
    font-size: 24px;
}
.action.step-1:before,
.action.step-2:before,
.action.step-3:before {
    content: "";
    display: none;
}
.supplement {
	font-weight: normal;
    font-size: 16px;
}

/************************
#faq
************************/
#faq h2{
    font-size: 36px;
}
.faq_contents {
	padding: 0 0 40px;
	font-feature-settings: inherit;
}
.question {
	font-size: 24px;
	margin-bottom: 40px;
}
.answer {
    background: #E9F9FF;
    color: #000;
    font-size: 20px;
    border-radius: 18px;
    line-height: 1.8;
    width: 100%;
    padding: 20px 20px 20px 30px;
    position: relative;
    box-shadow: -3px -3px rgb(0 140 188 / 50%) inset;
}
/************************
#infomation
************************/
#infomation table tr {
    border-bottom: 1px dotted #959595;
    display: flex;
    flex-direction: row;
}
#infomation table th {
    max-width: 300px;
    /* display: flex;
    align-items: center; */
	font-size: 2.2rem;
    padding: 30px 20px 30px 40px;
    vertical-align: text-top;
}
#infomation table td {
    /* display: flex; */
	font-size: 1.8rem;
    padding: 30px 0;
    vertical-align: text-top;
    line-height:unset;
}
#infomation .cation {
	float: left;
}

/************************
#form
************************/
.formInr{
    padding: 30px;
}
/***************************/