/* ************************************************ */
/**** 共通タグ設定 ****/
/* ************************************************ */
* {
box-sizing:border-box;
vertical-align:top;
}

html {
overflow: auto;
height: 100%;
font-size: 62.5%;
}

body {
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
padding: 0px;
margin: 0px;
font-size:1.8rem;
line-height:1.75;
color:#000;
background:#fff;
text-align:left;
height:100%;
letter-spacing:.05em;
word-wrap: break-word;
-webkit-text-size-adjust: 100%;
}

section {
text-align:center;
padding: 0;
}

p {
padding: 0;
margin:0 0 1.5em 0;
}

img{
max-width: 100%;
height: auto;
width :auto;
vertical-align:top;
}

h1,h2,h3,h4,h5,h6 {
padding:0;
margin:0;
font-weight: inherit;
}

a {
color:inherit;
text-decoration:underline;
transition: opacity 0.5s ease;
}
a:hover {
color:inherit;
text-decoration:underline;
opacity: .5;
transition: opacity 0.5s ease;
}

ul {
padding:0;
margin:0 0 1.5em 0;
list-style: none;
list-style-type: disc;
}
ul li {
padding: 0;
margin:0;
list-style: none;
}

ol {
padding:0;
margin:0 0 1.5em 0;
list-style: decimal outside;
}

ol li {
padding:0;
margin:0 0 0 1.5em;
}

dl {
padding: 0;
margin:0 0 1.5em 0;
}
dt {
margin:0;
padding:0;
}
dd {
margin:0;
padding:0;
}

b ,
strong {
font-weight:700;
}


/* ************************************************ */
/**** 共通クラス定義 ****/
/* ************************************************ */

/***** clearfix *****/
.clearfix:after { 
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}

/***** inner *****/
.inner {
/*width:1280px;*/
max-width:100%;
margin:auto;
}

/***** PCのみ/SPのみ *****/
.pc_only {
display:inline-block!important;
}
.pc_tab_only {
display:inline-block!important;
}
.tab_only {
display:none!important;
}
.tab_sp_only {
display:none!important;
}
.sp_only {
display:none!important;
}

/***** 改行無し *****/
.nobr {
display:inline-block;
}

/***** フォントカラー *****/
.clr_blue {
color:#010c71;
}
.clr_orange {
color:#fe9345;
}

/***** リスト *****/
ul.dotlist {
}
ul.dotlist li {
position:relative;
padding:0 0 0 1.5em;
position:relative;
margin:0 auto .5em auto;
}
ul.dotlist li:before {
content:"・";
position:absolute;
left:0;
}


/* ****************************************************************************** */
/**** wrapper ****/
/* ****************************************************************************** */
.wrapper{
width:100%;
min-width:100%;
max-width:100%;
position:relative;
overflow: hidden;
background:#fff;
}

/* ******************************************************************** */
/**** header ****/
/* ******************************************************************** */
.header {
background:#fff;
text-align:right;
width:100%;
height:80px;
position:fixed;
top:0;
bottom:auto;
left:0;
right:0;
margin:auto;
z-index:10;
border-bottom:1px solid #f5f5f3;
}

.header .inner {
display:flex;
justify-content:space-between;
align-items: center;
position:relative;
max-width:1280px;
padding:0 50px;
height:80px;
}
/*** logo ***/
.header .logo {
display:block;
padding:0 ;
margin:0 ;
width:160px;
height:22.85px;
}
.header .logo a {
display:block;
text-decoration:none;
width: 100%;
height: 100%;
}
.header .logo img {
width:160px;
height:22.85px;
}

/*** グロナビ ***/
.header .globalnavi {
display:block;
margin: 0 0 0 auto;
}

.header .globalnavi #navToggle {
display:none;
}

.header .globalnavi ul {
text-align:center;
position:relative;
display:flex;
align-items: center;
margin:0;
}
.header .globalnavi ul > li {
display:inline-block;
vertical-align: top;
margin:0 1.5rem;
position:relative;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
font-size:1.5rem;
}
.header .globalnavi ul > li.gnav_contact ,
.header .globalnavi ul > li.gnav_document  {
display:none;
}
.header .globalnavi ul > li a {
text-decoration:none;
padding: 0;
display: inline-block;
cursor:pointer;
line-height:70px;
}

/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */

/* ************************************************ */
/**** main ****/
/* ************************************************ */

/****************************** 共通 ******************************/
/***** section_header *****/
.section_header {
width:1280px;
max-width:100%;
margin:auto;
display:flex;
justify-content: space-between;
align-items: center;
}
.section_header .section_ic {
background:#010c71;
width:75px;
height:75px;
display:block;
color:#fff;
}
.section_header .section_ic i {
font-size: 3.5rem;
line-height:75px;
}
.section_header .section_id {
font-family: "Akshar", sans-serif;
font-weight:500;
color:#010c71;
border-bottom:1px solid #010c71;
padding:0 50px;
font-size:3rem;
line-height:75px;
}

/***** タイトル *****/
/* section_title */
.section_title {
font-family: 'Noto Sans JP', sans-serif;
font-size:3.4rem;
font-weight:400;
color:#010c71;
margin:0 auto 2em auto;
padding:0 ;
}

/***** btnarea *****/
.btnarea {
margin:0;
}
.btnarea a {
background:#010c71;
border:1px solid #010c71;
color:#fff;
text-decoration:none;
display:inline-block;
position:relative;
width:400px;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
font-size:1.6rem;
line-height:60px;
text-align:center;
transition: all 0.5s ease;
}
.btnarea a:hover {
background:#fff;
color:#010c71;
opacity:1;
transition: all 0.5s ease;
}

/****************************** TOPページ ******************************/
/******************** メインビジュアル ********************/
.mainvisual {
width:100%;
background:url(../images/mv.jpg) no-repeat center center;
background-size:cover;
position:relative;
}

.mainvisual .inner {
width:1280px;
position:relative;
padding:200px 50px 120px 50px;
}

/* mv_feature */
.mainvisual .mv_feature {
font-size:4rem;
text-align:left;
margin: 0 auto 1em auto;
}
/* mv_logo */
.mainvisual .mv_logo {
width:400px;
padding:50px;
text-align:center;
border-top:1px solid #010c71;
}
.mainvisual .mv_logo img {
display:block;
margin:auto;
}
.mainvisual .mv_logo .text {
display:block;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
font-size:1.8rem;
color:#010c71;
margin:1em auto 0 auto;
}
/* btnarea */
.mainvisual .btnarea {
text-align:left;
} 

/******************** Question ********************/
.question {
background:#fff;
position:relative;
padding:75px 0 150px 0;
}
.question .section_header {
margin-bottom:75px;
}
.question .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
display:flex;
align-items: center;
}

.question .question_txt {
width:60%;
padding-right:10%;
text-align:left;
}
.question .question_img {
width:40%;
}
.question .question_img ul {
display:flex;
}
.question .question_img ul li {
text-align:center;
margin:5%;
font-size:1.6rem;
max-width:200px;
}
.question .question_img ul li img {
margin-bottom:.75em;
}

/******************** Answer ********************/
.answer {
background:url(../images/answer_bg.jpg)no-repeat center center;
background-size:cover;
position:relative;
padding:150px 0;
}
.answer .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
font-size:2rem;
}


/******************** Solution ********************/
.solution {
background:#f5f5f3;
position:relative;
padding:75px 0 150px 0;
}
.solution .section_header {
margin-bottom:75px;
}
.solution .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
}

.solution .solution_txt {
}
.solution .solution_img {
}
.solution .solution_img ul {
display:flex;
flex-wrap:wrap;
justify-content: center;
}
.solution .solution_img ul li {
width:25%;
max-width:245px;
padding:2%;
font-size:2rem;
font-weight:500;
color:#010c71;
}
.solution .solution_img ul li img {
margin-bottom:.75em;
}


/******************** Contents ********************/
.contents {
background:#fff;
position:relative;
padding:75px 0 150px 0;
}
.contents .section_header {
margin-bottom:50px;
}
.contents .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
}

.contents .contents_curriculum {
}
.contents .contents_curriculum ul {
display:flex;
flex-wrap:wrap;
justify-content: center;
}
.contents .contents_curriculum ul li {
width:calc(100% / 3);
padding:2.5%;
font-size:1.4rem;
text-align:left;
}
.contents .contents_curriculum ul li img {
width:245px;
max-width:100%;
margin:0 auto 1em auto;
text-align:center;
display:block;
}
.contents .contents_curriculum ul li .contents_curriculum_title {
font-size:2rem;
font-weight:500;
color:#010c71;
text-align:center;
margin-bottom:.75rem;
}

.contents .contents_curriculum_other {
background:#f5f5f3;
border-radius:10px;
padding:50px;
margin-bottom: 50px;
}
.contents .contents_curriculum_other *:last-child {
margin-bottom:0;
}
.contents .contents_curriculum_other .contents_curriculum_other_title {
font-size:2.2rem;
font-weight:500;
color:#000;
text-align:center;
margin-bottom:.75rem;
}



/******************** Voice ********************/
.voice {
background:#f5f5f3;
position:relative;
padding:75px 0 150px 0;
}
.voice .section_header {
margin-bottom:50px;
}
.voice .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
}

.voice_slider {
position:relative;
}
.voice_slider .voice_slider_inner {
width:1280px;
max-width:100%;
margin: auto;
padding:0 50px;
}
.voice_slider ul {
}
.voice_slider ul > li {
background: #fff;
border-radius:10px;
padding:50px;
margin:0 0;
height: auto;
transition: all 0.5s ease;
}
.voice_slider ul > li .voice_slider_logo {
height:100px;
display:flex;
align-items:center;
justify-content: center;
margin-bottom:.75em;
}
.voice_slider ul > li .voice_slider_name {
text-align:center;
font-size:1.4rem;
margin-bottom:2em;
color:#999;
}
.voice_slider ul > li .voice_slider_message {
}
.voice_slider ul > li .voice_slider_message ul {
border-top:2px dotted #ccc;
margin-bottom:0;
}
.voice_slider ul > li .voice_slider_message ul li {
position:relative;
font-size:1.4rem;
text-align:left;
padding:1em 0 1em 4.1em ;
min-height:63px;
border-bottom:2px dotted #ccc;
border-radius: 0;
}
.voice_slider ul > li .voice_slider_message ul li.male:before {
font-family: "Font Awesome 6 Free";
content: "\f2bd";
font-weight:900;
color:#5177b0;
font-size:3.6rem;
position:absolute;
left:0;
top:.2em;
}
.voice_slider ul > li .voice_slider_message ul li.female:before {
font-family: "Font Awesome 6 Free";
content: "\f2bd";
font-weight:900;
color:#ed7356;
font-size:3.6rem;
position:absolute;
left:0;
top:.2em;
}

/*** swiper ***/
.voice_slider .swiper-container {
overflow: visible !important;
}
.voice_slider .swiper-button-next {
background-image: none;
left: auto;
right: 0;
width: 50px;
height: 50px;
margin: auto;
transform: translate(50% , -50% );
z-index:9;
}
.voice_slider .swiper-button-next:after {
font-family: "Font Awesome 6 Free";
content: "\f138";
font-weight:900;
font-size:3.6rem;
line-height:50px;
text-align:center;
vertical-align: middle;
color:#010c71;
margin:0 ;
width:50px;
min-width: 50px;
height:50x;
display:inline-block;
background:rgba(255,255,255,1);
border-radius:50%;
transition: all 0.5s ease;
opacity:1;
}
.voice_slider .swiper-button-prev {
background-image:none;
left: 0;
right: auto;
width: 50px;
height: 50px;
margin: auto;
transform: translate(-50% , -50% );
z-index:9;
}
.voice_slider .swiper-button-prev:after {
font-family: "Font Awesome 6 Free";
content: "\f137";
font-weight:900;
font-size:3.6rem;
line-height:50px;
text-align:center;
vertical-align: middle;
color:#010c71;
margin:0 ;
width:50px;
min-width: 50px;
height:50x;
display:inline-block;
background:rgba(255,255,255,1);
border-radius:50%;
transition: all 0.5s ease;
opacity:1;
}
.voice_slider .swiper-button-next:hover:after ,
.voice_slider .swiper-button-prev:hover:after {
opacity:.5;
}


/******************** Confidence ********************/
.confidence {
background:#fff;
position:relative;
padding:75px 0 150px 0;
}
.confidence .section_header {
margin-bottom:75px;
}
.confidence .inner {
width:100%;
max-width:1280px;
margin:0 auto ;
}

.confidence .confidence_flex {
position:relative;
padding:0 0 125px 0;
margin:0 auto 75px auto;
}
.confidence .confidence_flex_txt {
width:60%;
background:#fff;
text-align:left;
padding:0 50px 50px 50px;
position: relative;
z-index:1;
}
.confidence .confidence_flex_txt *:last-child {
margin-bottom:0;
}

.confidence .confidence_flex_img {
width:60%;
position:absolute;
right:0;
bottom:0;
}

.confidence .confidence_case {
padding:0 ;
}
.confidence .confidence_case ul {
display:flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}
.confidence .confidence_case ul li {
margin:3%;
}


/******************** About ********************/
.about {
background:#f5f5f3;
position:relative;
padding:75px 0 150px 0;
}
.about .section_header {
margin-bottom:50px;
}
.about .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
}

.about .about_mvv {
}
.about .about_mvv ul {
display:flex;
flex-wrap:wrap;
justify-content:center;
}
.about .about_mvv ul li {
width:340px;
height:340px;
padding:30px;
margin: 2%;
font-size:1.6rem;
text-align:center;
border-radius:50%;
background:#fff;
}
.about .about_mvv ul li .about_mvv_title {
font-family: "Akshar", sans-serif;
font-weight: 500;
color: #010c71;
font-size:2.4rem;
}
.about .about_mvv ul li img {
margin: .5em auto;
width:120px;
}


/******************** Message ********************/
.message {
background:#fff;
position:relative;
padding:75px 0 150px 0;
}
.message .section_header {
margin-bottom:75px;
}
.message .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
display:flex;
flex-wrap:wrap;
}

.message .message_txt {
width:70%;
min-width:calc(100% - 340px);
padding-right:10%;
text-align:left;
}
.message .message_txt .signature {
font-size:1.6rem;
text-align:right;
}
.message .message_txt .signature strong {
font-size:2rem;
font-weight:normal;
}
.message .message_img {
width:30%;
max-width:340px;
margin-top:130px;
}


/******************** Contact ********************/
.contact {
background:#f5f5f3;
position:relative;
padding:75px 0 150px 0;
}
.contact .section_header {
margin-bottom:50px;
}
.contact .inner {
width:100%;
max-width:1280px;
padding:0 50px;
margin:0 auto ;
}

.contact .contactform {
display:flex;
justify-content: center;
flex-wrap: wrap;
}

.contact .contactform .contactform_input {
width:50%;
}
.contact .contactform .contactform_textarea {
width:50%;
}

.contact .contactform .btn_submit {
position:relative;
display:inline;
margin:2em auto 0 auto;
width: 100%;
}

/***** フォーム *****/
input {
font-size: 1.6rem;
line-height:4rem;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
vertical-align: baseline;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
input[type="password"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

margin:5px;
padding:5px 10px;
border:0;
width:calc(100% - 10px);
height: 40px;
box-sizing:border-box;
background:#fff;
color:#53585f;
border-radius:0;
}
textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

font-size: 1.6rem;
line-height:4rem;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
margin:5px;
padding:5px 10px;
border:0;
width:calc(100% - 10px);
height:240px;
box-sizing:border-box;
background:#fff;
color:#53585f;
vertical-align: baseline;
border-radius:0;
}

input[type="submit"],
input[type="button"],
button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

background:#010c71;
border: 1px solid #010c71;
color:#fff;
text-decoration:none;
display: inline-block;
position:relative;
width:400px;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
font-size: 1.6rem;
line-height:60px;
transition: all 0.5s ease;
cursor:pointer;
}
input[type="submit"]:hover ,
input[type="button"]:hover ,
button:hover {
background:#fff;
color:#010c71;
opacity:1;
transition: all 0.5s ease;
}

input[type="submit"]:disabled,
input[type="button"]:disabled,
button:disabled,
input[type="submit"]:disabled:hover ,
input[type="button"]:disabled:hover ,
button:disabled:hover {
opacity:.2;
color:#fff;
background:#53585f;
cursor: not-allowed;
}

/***** Contact form 7 *****/
span.wpcf7-list-item {
display: block;
margin: 0 0 0;
}
/* ローダー */
.wpcf7-spinner {
display:none!important;
position: absolute!important;
top: 50%!important;
transform: translateY(-50%)!important;
margin: auto!important;
right: 14px!important;
width: 16px!important;
height: 16px!important;
}
.wpcf7-spinner::before {
top: 2px!important;
left: 2px!important;
transform-origin: 6px 6px!important;
}

form.submitting .wpcf7-spinner {
display:inline-block!important;
}
/* エラー表示 */
div.wpcf7-response-output,
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-mail-sent-ok,
div.wpcf7-mail-sent-ng {
background:#f6f6f6!important;
border:0!important;
margin: 4rem auto!important;
padding: 3rem 1.5rem!important;
box-sizing: border-box!important;
text-align:center!important;
}
/* エラーメッセージ */
span.wpcf7-not-valid-tip {
text-align:left!important;
color: #dc3232!important;
font-size:11px!important;
line-height: 1.2!important;
display: block!important;
margin: -5px 5px 10px 5px !important;
padding: 0 5px 10px 10px;
background: #fff;
}
span.wpcf7-not-valid-tip::before {
font-family: "Font Awesome 6 Free";
content: "\f06a";
font-weight: 900;
margin-right: .5em;
}
.agreement span.wpcf7-not-valid-tip {
display:none!important;
}


/* ******************************************************************** */
/**** footer ****/
/* ******************************************************************** */
.footer {
padding: 0;
text-align:center;
}
.footer .copyright {
padding:1.5em;
font-size:1.2rem;
}


/************************************************ 1080px以下 ************************************************/
@media screen and (max-width: 1080px){
/* ************************************************ */
/**** 共通クラス定義 ****/
/* ************************************************ */
/***** PCのみ/SPのみ *****/
.pc_only {
display:none!important;
}
.pc_tab_only {
display:inline-block!important;
}
.tab_only {
display:inline-block!important;
}
.tab_sp_only {
display:inline-block!important;
}
.sp_only {
display:none!important;
}

/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */

/* ************************************************ */
/**** main ****/
/* ************************************************ */
/****************************** TOPページ ******************************/
/******************** Question ********************/
.question .question_img ul {
justify-content: center;
flex-wrap:wrap;
}

}


/************************************************ 768px以下 ************************************************/
@media screen and (max-width: 768px){
/* ************************************************ */
/**** 共通タグ設定 ****/
/* ************************************************ */


/* ************************************************ */
/**** 共通クラス定義 ****/
/* ************************************************ */

/***** PCのみ/SPのみ *****/
.pc_only {
display:none!important;
}
.pc_tab_only {
display:none!important;
}
.tab_only {
display:none!important;
}
.tab_sp_only {
display:inline-block!important;
}
.sp_only {
display:inline-block!important;
}

/* ****************************************************************************** */
/**** wrapper ****/
/* ****************************************************************************** */
.wrapper{
}
/* ******************************************************************** */
/**** header ****/
/* ******************************************************************** */
.header {
height:60px;
}

.header .inner {
height:60px;
padding: 0 20px;
}
/*** logo ***/
.header .logo {
width:120px;
height:17.15px;
}
.header .logo img {
width:120px;
height:17.15px;
}

/*** グロナビ ***/
.header .globalnavi {
display:none;
margin:0;
position:fixed;
width: 100%;
height:100%;
top:60px;
left: 0;
background:rgba(255,255,255,.95);
}
.header.openNav .globalnavi {
display:block;
overflow-y: auto;
height: calc(100% - 60px );
}
.header #navToggle {
font-size:2rem;
line-height:40px;
display:block;
text-align:center;
width:40px;
height:40px;
cursor:pointer;
margin: 0 0;
padding: 0;
z-index:10;
border-radius:50%;
}
.header #navToggle:after {
font-family: "Font Awesome 6 Free";
content: "\f0c9";
font-weight: 900;
vertical-align:top;
color:#010c71;
}
.header.openNav #navToggle:after {
font-family: "Font Awesome 6 Free";
content: "\f00d";
font-weight: 900;
vertical-align:top;
color:#010c71;
}

.header .globalnavi ul {
text-align:left;
display:flex;
flex-flow: wrap;
}
.header .globalnavi ul > li {
margin:0;
border-bottom:1px solid #f5f5f3;
width:100%;
}
.header .globalnavi ul > li a {
display:block;
margin:0 auto;
padding: 20px;
color:#000;
background:#fff;
line-height:21px;
transition: all 0.5s ease;
}
.header .globalnavi ul > li a:after {
font-family: "Font Awesome 6 Free";
content: "\f054";
font-weight: 900;
font-size:1rem;
float:right;
}


/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */

/* ************************************************ */
/**** main ****/
/* ************************************************ */


/****************************** 共通 ******************************/
/***** section_header *****/
.section_header {
width:100%;
align-items: flex-end;
}
.section_header .section_ic {
width:50px;
height:50px;
}
.section_header .section_ic i {
font-size: 2.5rem;
line-height:50px;
}
.section_header .section_id {
padding:0 20px;
font-size:2rem;
line-height:40px;
}

/***** タイトル *****/
/* section_title */
.section_title {
font-size:2.4rem;
margin:0 auto 40px auto;
text-align:center;
}

/***** btnarea *****/
.btnarea {
margin:0;
}
.btnarea a {
width:100%;
max-width:400px;
font-size:1.6rem;
line-height:50px;
}
.btnarea a:hover {
background:#fff;
color:#010c71;
opacity:1;
transition: all 0.5s ease;
}

/****************************** TOPページ ******************************/
/******************** メインビジュアル ********************/
.mainvisual {
width:100%;
background:#f5f5f3 url(../images/mv_sp.jpg) no-repeat center bottom;
background-size:contain;
position:relative;
padding-bottom: calc((9/16)*100%);
}

.mainvisual .inner {
width:100%;
position:relative;
padding:100px 20px 20px 20px;
}

/* mv_feature */
.mainvisual .mv_feature {
font-size:2.6rem;
line-height:1.5;
margin: 0 auto 1em auto;
text-align:center;
}
/* mv_logo */
.mainvisual .mv_logo {
width:100%;
max-width:400px;
padding:25px;
text-align:center;
margin:auto;
}
.mainvisual .mv_logo img {
width:200px;
}
.mainvisual .mv_logo .text {
font-size:1.4rem;
margin:.5em auto 0 auto;
}
/* btnarea */
.mainvisual .btnarea {
text-align:center;
max-width: 400px;
margin:auto;
} 


/******************** Question ********************/
.question {
padding:0 0 50px 0;
}
.question .section_header {
margin-bottom:25px;
}
.question .inner {
max-width:100%;
padding:0 20px;
flex-wrap:wrap;
}

.question .question_txt {
width:100%;
padding-right:0;
}
.question .question_img {
width:100%;
}
.question .question_img ul {
flex-wrap: nowrap;
}
.question .question_img ul li {
margin:4%;
font-size:1.3rem;
}

/******************** Answer ********************/
.answer {
padding:50px 0;
}
.answer .inner {
max-width:100%;
padding:0 20px;
font-size:1.6rem;
}


/******************** Solution ********************/
.solution {
padding:0 0 50px 0;
}
.solution .section_header {
margin-bottom:25px;
}
.solution .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.solution .solution_txt {
}
.solution .solution_img {
}
.solution .solution_img ul li {
width:50%;
padding:4%;
font-size:1.6rem;
}


/******************** Contents ********************/
.contents {
padding:0 0 50px 0;
}
.contents .section_header {
margin-bottom:25px;
}
.contents .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.contents .contents_curriculum {
}
.contents .contents_curriculum ul {
}
.contents .contents_curriculum ul li {
width:100%;
padding:2.5%;
}
.contents .contents_curriculum ul li img {
width:160px;
}
.contents .contents_curriculum ul li .contents_curriculum_title {
font-size:1.8rem;
line-height:1.5;
}

.contents .contents_curriculum_other {
padding:25px;
margin-bottom: 25px;
font-size:1.4rem;
}
.contents .contents_curriculum_other *:last-child {
margin-bottom:0;
}
.contents .contents_curriculum_other .contents_curriculum_other_title {
font-size:1.8rem;
font-weight:500;
color:#000;
text-align:center;
margin-bottom:.75rem;
}



/******************** Voice ********************/
.voice {
padding:0 0 50px 0;
}
.voice .section_header {
margin-bottom:25px;
}
.voice .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.voice_slider {
position:relative;
}
.voice_slider .voice_slider_inner {
width:100%;
padding:0 20px;
}
.voice_slider ul {
}
.voice_slider ul > li {
padding:20px;
}
.voice_slider ul > li .voice_slider_logo {
}
.voice_slider ul > li .voice_slider_name {
font-size:1.4rem;
}
.voice_slider ul > li .voice_slider_message {
}
.voice_slider ul > li .voice_slider_message ul {
}
.voice_slider ul > li .voice_slider_message ul li {
font-size:1.2rem;
}

/*** swiper ***/
.voice_slider .swiper-container {
overflow: visible !important;
}
.voice_slider .swiper-button-next {
width: 40px;
height: 40px;
}
.voice_slider .swiper-button-next:after {
font-size:2.4rem;
line-height:40px;
width:40px;
min-width: 40px;
height:40x;
}
.voice_slider .swiper-button-prev {
width: 40px;
height: 40px;
}
.voice_slider .swiper-button-prev:after {
font-size:2.4rem;
line-height:40px;
width:40px;
min-width: 40px;
height:40x;
}

/******************** Confidence ********************/
.confidence {
padding:0 0 50px 0;
}
.confidence .section_header {
margin-bottom:25px;
}
.confidence .inner {
max-width:100%;
padding:0 0;
margin:0 auto ;
}
.confidence .confidence_flex {
padding:0;
margin:0 auto 50px auto;
}
.confidence .confidence_flex_txt {
width:100%;
padding:0 20px 50px 20px;
}
.confidence .confidence_flex_img {
width:100%;
position:relative;
}

.confidence .confidence_case {
padding:0 ;
}
.confidence .confidence_case ul {
}
.confidence .confidence_case ul li {
margin:3%;
width: 44%;
}
.confidence .confidence_case ul li img {
scale: 75%;
}



/******************** About ********************/
.about {
padding:0 0 50px 0;
}
.about .section_header {
margin-bottom:25px;
}
.about .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.about .about_mvv {
}
.about .about_mvv ul {
display:flex;
flex-wrap:wrap;
justify-content:center;
}
.about .about_mvv ul li {
width:300px;
height:300px;
padding:30px;
margin: 3%;
font-size:1.4rem;
}
.about .about_mvv ul li .about_mvv_title {
font-size:2rem;
}
.about .about_mvv ul li img {
margin: .5em auto;
width:100px;
}



/******************** Message ********************/
.message {
padding:0 0 50px 0;
}
.message .section_header {
margin-bottom:25px;
}
.message .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.message .message_txt {
width:100%;
min-width:100%;
padding-right:0;
font-size:1.6rem;
margin-bottom:2em;
}
.message .message_txt .signature {
font-size:1.4rem;
}
.message .message_txt .signature strong {
font-size:1.8rem;
}
.message .message_img {
width:100%;
min-width:100%;
margin-top:0;
}


/******************** Contact ********************/
.contact {
padding:0 0 50px 0;
}
.contact .section_header {
margin-bottom:25px;
}
.contact .inner {
max-width:100%;
padding:0 20px;
margin:0 auto ;
}

.contact .contactform {
}

.contact .contactform .contactform_input {
width:100%;
}
.contact .contactform .contactform_textarea {
width:100%;
}

.contact .contactform .btn_submit {
margin:1em auto 0 auto;
}

/***** フォーム *****/
input {
font-size: 1.4rem;
width:100%;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
input[type="password"] {
margin:5px 0; 
width:100%;
}
textarea {
font-size: 1.4rem;
width:100%;
margin:5px 0; 
}

input[type="submit"],
input[type="button"],
button {
width:100%;
max-width:400px;
line-height:50px;
}

/***** Contact form 7 *****/
/* エラーメッセージ */
span.wpcf7-not-valid-tip {
margin: -5px 0 10px 0 !important;
}


/* ******************************************************************** */
/**** footer ****/
/* ******************************************************************** */


}
