﻿@charset "UTF-8";

@font-face {
font-family: 'Noto Serif Japanese';
font-style:normal;
font-weight:500;
src:url(fonts/NotoSerifCJKjp-SemiBold.woff2) format("woff2"),
url(fonts/NotoSerifCJKjp-SemiBold.woff) format("woff"),
url(fonts/NotoSerifCJKjp-SemiBold.otf) format("opentype");
}
.fontSerif {
font-family:'Noto Serif Japanese';
font-weight:500;
}


/*---------- ページ全体の指定 ----------*/

body {
font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
margin:0;
padding:0;
font-size:100%;
color:#444546;
-webkit-text-size-adjust:none;
}

a:link {color:#3b5998;text-decoration:underline;}
a:visited {color:#3b5998;text-decoration: underline;}
a:hover {color:#206CFF;text-decoration:none;}
a img {border-style:none;}
img {vertical-align:bottom;}

.clr{clear:both;}

p {
font-size:100%;
line-height:160%;
}
@media screen and (min-width:769px){
p {
font-size:18px;
line-height:180%;
letter-spacing:1px;
}
}

@media screen and (max-width:768px){.spnone{display:none;}}
@media screen and (min-width:769px){.pcnone{display:none;}}


#copy{margin:0;padding:0;}
#copy img{width:100%;}
@media screen and (min-width:769px){
#copy{
text-align:center;
background-image:url(img/copy_bg.png);
background-position:top center;
background-repeat:no-repeat;
}
#copy img{width:1100px;}
}



.device_bg{
margin:0;
padding:30px 20px 45px 20px;
background:#ecf0f4;
}
.device_top{
margin:0;
padding:0;
font-size:200%;
line-height:150%;
text-align:center;
color:#639dce;
font-family: 'Dancing Script', cursive;
}
.device_txt{
margin:0;
padding:10px 0 20px 0;
font-size:100;
font-weight:bold;
line-height:180%;
text-align:center;
font-family: 'Noto Serif Japanese';
}
.device_step{
margin:0 auto;
padding:0;
}
.step_number{
margin:0;
padding:0 0 10px 0;
font-size:120%;
line-height:100%;
color:#639dce;
text-align:center;
font-family: 'Dancing Script', cursive;
}
.step_txt{
margin:0 0 20px 0;
padding:0;
font-size:90%;
line-height:150%;
}
.device{
margin:15px auto 20px auto;
padding:25px 20px;
text-align:center;
background:#fff;
border:double 3px #ecf0f4;
}
.device a:link {
color:#fff;
text-decoration:none;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.device a:hover {
color:#fff;
text-decoration:none;
opacity:0.7;
filter:alpha(opacity=70);
-webkit-transition:0.3s ease-in-out;
-moz-transition:0.3s ease-in-out;
-o-transition:0.3s ease-in-out;
transition:0.3s ease-in-out;
}
.device a:visited {color:#fff;text-decoration:none;}

input[type="text"], textarea, select {
border:0;
padding:20px 10px;
font-size:100%;
border:solid 1px #ccc;
text-align:center;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
-moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
}
input[type="text"]:focus,
textarea:focus {
box-shadow: 0 0 7px #999999;
border: 1px solid #666;
}
/* Chrome, Safari */
::-webkit-input-placeholder{
color:#999;
}
/* Firefox */
::-moz-placeholder{
color:#999;
}
/* Firefox 18以前 */
:-moz-placeholder{
color:#999;
}
/* IE */
:-ms-input-placeholder{
color:#999;
}

input[type="submit"],input[type="button"] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing:border-box;
cursor: pointer;
font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
  opacity:0.7;
filter:alpha(opacity=70);
-webkit-transition:0.3s ease-in-out;
-moz-transition:0.3s ease-in-out;
-o-transition:0.3s ease-in-out;
transition:0.3s ease-in-out;
}
/* Chrome, Safari */
::-webkit-input-placeholder{
color:#999;
}
/* Firefox */
::-moz-placeholder{
color:#999;
}
/* Firefox 18以前 */
:-moz-placeholder{
color:#999;
}
/* IE */
:-ms-input-placeholder{
color:#999;
}
.btn {
width:100%;
margin:15px auto 0 auto;
padding:20px 0;
display:inline-block;
font-size:100%;
font-weight:bold;
text-decoration:none;
color:#fff;
text-align:center;
background:-moz-linear-gradient(left, #87caee, #7f87bd);
background:-webkit-linear-gradient(left, #87caee, #7f87bd);
background:linear-gradient(to right, #87caee, #7f87bd);
}
.btn:hover {
filter:alpha(opacity=70); /* IE 6,7*/
-moz-opacity:0.7; /* IE 8,9 */
opacity:0.7;
-webkit-transition:0.3s ease-in-out;
-moz-transition:0.3s ease-in-out;
-o-transition:0.3s ease-in-out;
transition:0.3s ease-in-out;
}
@media screen and (min-width:360px) and ( max-width:768px) {
.device_caption{
margin:0 auto;
padding:0;
font-size:75%;
line-height:180%;
color:#999;
overflow:auto;
height:80px;
}
}
@media screen and (min-width:769px){
.device_bg{padding:45px 0 60px 0;}
.device_top{font-size:60px;}
.device_txt{padding:15px 0 30px 0;font-size:24px;letter-spacing:1px;}
.device_step{width:680px;padding:0 0 20px 0;}
.step_number{
width:100px;
padding:0;
font-size:32px;
text-align:left;
display:table-cell;
vertical-align:middle;
}
.step_txt{
width:580px;
margin:0;
font-size:16px;
letter-spacing:1px;
display:table-cell;
vertical-align:middle;
}
.device{width:680px;margin:15px auto 30px auto;padding:45px 90px;}

input[type="text"], textarea, select {font-size:20px;letter-spacing:1px;}
.btn {
width:500px;
margin:20px auto 0 auto;
font-size:20px;
}
.device_caption{
width:600px;
margin:0 auto;
padding:0;
font-size:12px;
line-height:180%;
color:#999;
}
}


#pv_bg{
margin:0;
padding:30px 20px 45px 20px;
background:#d2dddd;
}
.pv_eng{
margin:0 0 10px 0;
padding:0;
font-size:150%;
line-height:150%;
text-align:center;
font-family: 'Dancing Script', cursive;
}
.pv_txt{
margin:0 0 20px 0;
padding:0;
font-size:120%;
line-height:160%;
text-align:center;
font-family: 'Noto Serif Japanese';
}
.pv{margin:0 auto;padding:0;}
.video{
margin:0;
padding:0;
position:relative;
width:100%;
padding-top:56.25%;
}
.video iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}
@media screen and (min-width:769px){
#pv_bg{padding:55px 0 90px 0;}
.pv_eng{font-size:32px;}
.pv_txt{margin:0 0 30px 0;font-size:32px;letter-spacing:1px;}
.pv{width:768px;margin:0 auto;}
}


.subject_eng{
margin:45px 0 5px 0;
padding:0;
font-size:150%;
line-height:150%;
text-align:center;
color:#639dce;
font-family: 'Dancing Script', cursive;
}
.subject{
margin:0 20px 20px 20px;
padding:0;
font-size:150%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: 'Noto Serif Japanese';
}
@media screen and (min-width:769px){
.subject_eng{margin:90px 0 10px 0;font-size:32px;}
.subject{margin:0 0 30px 0;font-size:36px;letter-spacing:1px;}
}


.pgm_box{
margin:0 15px;
padding:10px 30px 15px 30px;
border:double 3px #639dce;
}
.pgm_number{
margin:0;
padding:30px 0 20px 0;
font-size:95%;
font-weight:bold;
line-height:100%;
text-align:center;
}
.pgm_number span{
padding:5px;
color:#fff;
background:#639dce;
}
.pgm_title{
margin:0;
padding:0;
font-size:125%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: 'Noto Serif Japanese';
}
.pgm_pict{margin:15px 0 20px 0;padding:0;}
.pgm_pict img{width:100%;}
@media screen and (min-width:769px){
.pgm_box{
width:768px;
margin:0 auto;
padding:20px 200px 60px 200px;
}
.pgm_number{
padding:45px 0 20px 0;
font-size:21px;
letter-spacing:1px;
}
.pgm_number span{padding:5px 20px;}
.pgm_title{font-size:28px;letter-spacing:1px;}
.pgm_pict{margin:20px 0 30px 0;}
}


.voice_top{
margin:0;
padding:0;
font-size:100%;
line-height:180%;
text-align:center;
}
.voice_caption{
margin:0;
padding:0;
font-size:75%;
line-height:180%;
text-align:center;
color:#666;
}
.voice{
margin:35px 20px 0 20px;
padding:0;
}
.voice_detail{margin:0;padding:0;}
.voice_title{
margin:0;
padding:2px 0 2px 12px;
font-size:120%;
font-weight:bold;
line-height:160%;
border-left:2px solid #7f87bd;
font-family: 'Noto Serif Japanese';
}
.voice_name{
margin:5px 0 20px 0;
padding:0;
font-size:100%;
line-height:150%;
}
.voice_name span{font-size:80%;}
.voice_txt{
margin:0;
padding:1px 20px;
border:4px solid #ddd;
}
.voice_message{
margin:-10px 0 0 0;
padding:0;
font-size:100%;
font-weight:bold;
line-height:100%;
color:#fff;
}
.voice_message span{padding:1px 10px;background:#7f87bd;}
.voice_pict{margin:0 0 15px 0;padding:0;text-align:center;}
.voice_pict img{width:50%;}
.order1{}
.order2{}
@media screen and (min-width:769px){
.voice_top{font-size:18px;letter-spacing:1px;}
.voice_caption{font-size:12px;letter-spacing:1px;}
.voice{
width:1000px;
margin:75px auto 0 auto;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:-o-flex;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
justify-content:space-between;
}
.voice_detail{width:65%;}
.voice_title{
padding:2px 0 2px 20px;
font-size:28px;
letter-spacing:1px;
}
.voice_name{
margin:15px 0 45px 0;
font-size:18px;
letter-spacing:1px;
}
.voice_name span{font-size:14px;}
.voice_txt{padding:1px 45px;}
.voice_message{margin:-10px 0 0 0;font-size:16px;}
.voice_pict{width:30%;margin:0;}
.voice_pict img{width:100%;}
.order1{order:1;}
.order2{order:2;}
}




.txt_box{
margin:60px 20px;
padding:5px 30px 15px 30px;
position:relative;
line-height:150%;
}
.txt_large{
margin:0;
padding:0;
font-size:125%;
line-height:180%;
text-align:center;
font-family: 'Noto Serif Japanese';
}
.txt_box::before, .txt_box::after {
content:'';
width:20px;
height:100%;
position:absolute;
}
.txt_box::before {
border-left:solid 1px #ccc;
border-top:solid 1px #ccc;
border-bottom:solid 1px #ccc;
top:0;
left:0;
}
.txt_box::after {
border-right:solid 1px #ccc;
border-top:solid 1px #ccc;
border-bottom:solid 1px #ccc;
top:0;
right:0;
}
@media screen and (min-width:769px){
.txt_box{
width:640px;
margin:90px auto 90px auto;
padding:1px 90px 20px 90px;
}
.txt_large{font-size:24px;letter-spacing:1px;}
}


.prf_top{
margin:45px 20px 0 20px;
padding:0 0 0 10px;
font-size:125%;
font-weight:bold;
line-height:150%;
letter-spacing:10px;
text-align:center;
}
.prf_eng{
margin:0 0 20px 0;
padding:0;
font-size:18px;
line-height:150%;
text-align:center;
color:#999;
font-family: 'Dancing Script', cursive;
}
.prf{
margin:0 20px;
padding:0;
}
.prf p{font-size:90%;}

.prf_back{
margin:0 0 20px 0;
padding:30px 0;
background-image:url(img/back_dots.png);
border-top:solid 2px #639dce;
}
.prf_photo{
width:45%;
margin:0 auto;
padding:15px;
text-align:center;
position:relative;
}
.prf_photo:before,.prf_photo:after{ 
content:'';
width:30px;
height:30px;
position:absolute;
display:inline-block;
}
.prf_photo:before{
border-left:solid 1px #639dce;
border-top:solid 1px #639dce;
top:0;
left:0;
}
.prf_photo:after{
border-right:solid 1px #639dce;
border-bottom:solid 1px #639dce;
bottom:0;
right:0;
}
.prf_photo img{width:100%;}

.prf_degree{
margin:0;
padding:0;
font-size:85%;
font-weight:bold;
line-height:160%;
text-align:center;
}
.prf_name{
margin:0;
padding:5px 0 0 0;
font-size:150%;
font-weight:bold;
line-height:160%;
text-align:center;
}
.prf_name_eng{
margin:0;
padding:0 0 5px 10px;
font-size:80%;
line-height:150%;
letter-spacing:10px;
text-align:center;
color:#7f87bd;
font-family:Arial, Helvetica, sans-serif;
}
@media screen and (min-width:769px){
.prf_top{margin:75px 0 0 0;font-size:24px;}
.prf_eng{margin:0 0 30px 0;font-size:18px;}
.prf{width:768px;margin:0 auto;}
.prf p{font-size:16px;}
.prf_back{margin:0 0 30px 0;}
.prf_photo{width:240px;}
.prf_degree{font-size:16px;letter-spacing:1px;}
.prf_name{font-size:36px;letter-spacing:1px;}
.prf_name_eng{padding:0 0 15px 10px;font-size:14px;letter-spacing:10px;}
}


.service_top{
margin:0;
padding:45px 0 15px 0;
font-size:120%;
font-weight:bold;
line-height:180%;
text-align:center;
}
.service{
margin:0 20px 45px 20px;
padding:0;
}
table.spec{
width:100%;
border-collapse:separate;
margin:0;
}
table.spec th{
width:100px;
padding:15px 0;
font-size:80%;
line-height:150%;
text-align:left;
border-bottom:solid 1px #639dce;
}
table.spec td{
padding:15px 0;
font-size:80%;
line-height:150%;
border-bottom:solid 1px #ccc;
}
@media screen and (min-width:769px){
.service_top{padding:75px 0 15px 0;font-size:24px;letter-spacing:1px;}
.service{
width:640px;
margin:0 auto 90px auto;
padding:15px 45px 30px 45px;
border:solid 3px #eee;
}
table.spec th{width:110px;font-size:14px;letter-spacing:1px;}
table.spec td{font-size:14px;letter-spacing:1px;}
}


/*---------- 文字装飾 ----------*/

.bold{font-weight:bold;}
.ul{text-decoration:underline;}
.ym{background: linear-gradient(transparent 40%, #ffff66 40%);}
.caption{font-size:12px;color:#666666;font-weight:normal;line-height:180%;}


/*---------- 文字位置 ----------*/

.center{text-align:center;}
.right{text-align:right;}



#footer{
margin:0;
font-family:Arial, Helvetica, sans-serif;
font-size:12px;
line-height:200%;
text-align:center;
padding:30px 0;
color:#CCCCCC;
background-color:#524f4f;
}
#footer a:link {color:#ccc;text-decoration:none;}
#footer a:visited {color:#ccc;text-decoration:none;}
#footer a:hover {color:#ccc;text-decoration:underline;}
