@charset "UTF-8";

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

body {
margin:0;
padding:0;
font-size:100%;
color:#354341;
font-family:'Yu Gothic Medium', '游ゴシック Medium', YuGothic, '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', sans-serif;
}

a:link {color:#37859a;text-decoration:underline;}
a:visited {color:#37859a;text-decoration:underline;}
a:hover {color:#139eb1;text-decoration:none;}
a{-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;}
a img {border-style:none;}
img {vertical-align:bottom;}
a:hover img{opacity:0.6;filter:alpha(opacity=60);}
a img {border-style:none;-webkit-transition:all .3s;transition:all .3s;}

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


/*---------- 見出し ----------*/

h1{}
h2{}
h3{}
h4{}



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

#copy_bg{
margin:0;
padding:0;
background:#fff;
position:relative;
z-index:0;
overflow:hidden;
}
#copy_bg::before {
content: '';
display:block;
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
background-color:#faf4f4;
transform-origin:bottom right;
transform:skewY(-60deg);
z-index: -1;
}
.copy{
margin:0;
padding:15px 10px 20px 10px;
text-align:center;
}
.copy img{width:100%;}
@media screen and (min-width:769px){
#copy_bg::before {transform:skewY(-35deg);}
.copy{padding:20px 0 30px 0;}
.copy img{width:640px;}
}

.books_title{
margin:0 auto;
padding:5px 20px;
font-size:120%;
font-weight:900;
line-height:150%;
text-align:center;
font-family: "Noto Sans Japanese";
position:relative;
display:inline-block;
top:0;
}
.books_title:before, .books_title:after { 
position:absolute;
top:0;
content:'';
width:8px;
height:100%;
display:inline-block;
}
.books_title:before {
border-left:solid 1px #354341;
border-top:solid 1px #354341;
border-bottom:solid 1px #354341;
left:0;
}
.books_title:after {
content:'';
border-top:solid 1px #354341;
border-right:solid 1px #354341;
border-bottom:solid 1px #354341;
right:0;
}
.books_box{
margin:20px;
padding:0;
}
.books{margin:0;padding:0 0 10px 0;}
.books img{width:100%;}
@media screen and (min-width:769px){
.books_title{
width:400px;
margin:0 auto;
padding:5px 0;
font-size:24px;
}
.books_box{
width:1080px;
margin:30px auto 60px auto;
padding:0;
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;
}
.books{width:49%;padding:0;}
}


.device_bg{
margin:0;
padding:35px 25px;
background:#354341;
}
.device_top{
margin:0;
padding:0 0 20px 0;
font-size:100%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#fff;
}
.device_head{
margin:0;
padding:0 0 5px 0;
font-size:120%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#fff;
}
.device_title{
margin:0;
padding:0 0 15px 0;
font-size:180%;
font-weight:900;
line-height:130%;
text-align:center;
color:#fff;
font-family: "Noto Sans Japanese";
}
.device_sub{
margin:0;
padding:20px 0 5px 0;
font-size:120%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#fff;
}
.device_sub span{
padding:10px 0;
border-top:1px solid #fff;
border-bottom:1px solid #fff;
}
.device{
margin:0;
padding:0;
text-align:center;
}
.device a:link {color:#fff;text-decoration:none;}
.device a:visited {color:#fff;text-decoration:none;}
.device a:hover {color:#fff;text-decoration:none;}
.btn {
width:90%;
margin:0 auto;
padding:15px 0;
font-size:100%;
font-weight:bold;
display:inline-block;
text-decoration:none;
color:#fff;
background:#ff6060;
}
.btn:hover {
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;
}
.device_caption{
margin:20px auto 0 auto;
padding:0;
font-size:90%;
line-height:160%;
color:#f2f2f2;
text-align:center;
}
@media screen and (min-width:769px) {
.device_bg{padding:45px 0;}
.device_top{font-size:20px;}
.device_head{font-size:28px;}
.device_title{font-size:60px;}
.device_sub{font-size:24px;}
.device_sub span{padding:10px;}
.btn {
width:480px;
margin:0 auto;
padding:20px 0;
font-size:21px;
letter-spacing:1px;
}
.device_caption{width:640px;margin:30px auto 0 auto;font-size:14px;line-height:180%;}
}


.recommend{
margin:45px 0 20px 0;
padding:0;
font-size:160%;
font-weight:900;
line-height:150%;
color:#ff6060;
text-align:center;
font-family: "Noto Sans Japanese";
}
.recommend_box{
margin:0 20px 45px 20px;
padding:1px 20px 25px 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
border:2px solid #ff6060;
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
}
@media screen and (min-width:769px) {
.recommend{margin:75px 0 20px 0;font-size:36px;}
.recommend_box{width:768px;margin:0 auto 90px auto;padding:15px 60px 30px 60px;}
}


.message{
margin:60px 30px 0 30px;
padding:0 0 5px 0;
font-size:100%;
font-weight:bold;
line-height:150%;
color:#ff6060;
text-align:center;
}
.subhead{
margin:0 30px 30px 30px;
padding:0 0 20px 0;
font-size:160%;
font-weight:900;
line-height:150%;
font-family: "Noto Sans Japanese";
position:relative;
text-align:center;
border-bottom:3px solid #eceeee;
}
.subhead:before {
content:"";
position:absolute;
left:0;
bottom:-3px;
width:45px;
height:inherit;
border-bottom:3px solid #ff6060;
}
.topspace{margin-top:60px;}
.subject{
margin:20px 0 15px 0;
padding:2px 0 2px 15px;
font-size:140%;
line-height:150%;
font-family: "Noto Sans Japanese";
border-left:6px solid #ff6060;
}
.contents{
margin:0 30px 60px 30px;
padding:0;
}
.contents_message{
margin:0 20px 60px 20px;
padding:5px 25px;
border:1px solid #ff6060;
}
.pict{
margin:0;
padding:0 0 5px 0;
text-align:center;
}
.pict img{width:100%;}
table.frame{
width:100%;
border-collapse:separate;
margin:20px 0 30px 0;
}
table.frame th{
width:40%;
padding:10px 0 10px 0;
font-size:100%;
line-height:150%;
color:#ff6060;
background:#f7eaea;
border-bottom:1px solid #ddd;
}
table.frame td{
padding:10px 0 10px 15px;
font-size:100%;
font-weight:bold;
line-height:150%;
border-bottom:1px solid #ddd;
}
.mt{margin-top:30px;}
.step_box{
margin:30px 0;
padding:30px 0;
border:1px solid #ff6060;
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
}
.step_number{
margin:0;
padding:0;
font-size:100%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#ff6060;
font-family: 'Roboto Condensed', sans-serif;
}
.step{
margin:0;
padding:0;
font-size:115%;
font-weight:bold;
line-height:150%;
text-align:center;
}
.triangle{
margin:15px 0;
padding:0;
text-align:center;
width: 0;
height: 0;
border-left:15px solid transparent;
border-right:15px solid transparent;
border-top:15px solid #ddd;
}
@media screen and (min-width:769px){
.message{width:768px;margin:90px auto 0 auto;font-size:18px;}
.subhead{width:768px;margin:0 auto 45px auto;font-size:36px;}
.topspace{margin-top:90px;}
.subject{margin:30px 0 15px 0;font-size:24px;}
.contents{width:768px;margin:0 auto 90px auto;}
.contents_message{
width:768px;
margin:0 auto 90px auto;
padding:25px 60px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
table.frame{margin:20px 0 30px 0;}
table.frame th{width:30%;padding:15px;font-size:16px;}
table.frame td{padding:15px 0 15px 15px;font-size:16px;}
.mt{margin-top:45px;}
.step_number{font-size:18px;}
.step{font-size:30px;}
}

table.check {
width:100%;
border-collapse:collapse;
margin:10px 0 0 0;
}
table.check th{
width:25px;
font-size:100%;
line-height:150%;
padding:10px 0 5px 0;
color:#ff6060;
vertical-align:top;
text-align:left;
}
table.check td{
font-size:100%;
font-weight:bold;
line-height:150%;
padding:12px 0 5px 0;
border-bottom:dotted 1px #999;
vertical-align:top;
text-align:left;
}
@media screen and (min-width:769px) {
table.check {margin:0;}
table.check th{width:35px;font-size:18px;}
table.check td{font-size:18px;}
}


.prf_pict{
margin:0;
padding:0;
text-align:center;
}
.prf_pict img{
width:60%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
border-radius:50%;
}
.prf_category{
margin:0;
padding:5px 0 20px 0;
font-size:100%;
font-weight:bold;
line-height:100%;
}
.prf_category span{
padding:5px 10px;
color:#fff;
background:#451346;
}
.prf_degree{
margin:0;
padding:0;
font-size:90%;
line-height:160%;
}
.prf_name{
margin:0;
padding:0;
font-size:140%;
font-weight:bold;
line-height:150%;
}
.prf_subhead{
margin:30px 0 0 0;
padding:0 0 5px 0;
font-size:125%;
font-weight:bold;
line-height:150%;
color:#ff6060;
border-bottom:dotted 1px #999;
}
.prf_space{
margin:30px 0 0 0;
padding:0
}
@media screen and (min-width:769px) {
.prf_pict{
margin:0 120px 0 0;
padding:0;
float:right;
}
.prf_pict img{width:240px;}
.prf_category{font-size:18px;}
.prf_degree{font-size:16px;}
.prf_name{font-size:36px;}
.prf_subhead{margin:30px 0 0 0;font-size:24px;}
.prf_space{margin:60px 0 0 0;}
}



#subpage{
margin:0;
padding:30px 20px;
}
#subpage p{font-size:80%;}
.page_title{
margin:0 0 30px 0;
padding:0;
font-size:120%;
line-height:150%;
text-align:center;
}
table.info{
width:100%;
border-collapse:separate;
margin:0 0 20px 0;
}
table.info th{
padding:20px 0 5px 0;
font-size:80%;
line-height:150%;
text-align:left;
border-bottom:solid 1px #666;
display:block;
}
table.info td{
padding:10px 0 0 0;
font-size:80%;
line-height:150%;
display:block;
}
@media screen and (min-width:769px){
#subpage{
width:768px;
margin:0 auto;
padding:75px 0 90px 0;
}
#subpage p{font-size:14px;}
.page_title{
margin:0 0 60px 0;
font-size:24px;
letter-spacing:1px;
}
table.info{margin:20px 0;}
table.info th{
width:180px;
padding:10px 0;
font-size:14px;
letter-spacing:1px;
display:table-cell;
}
table.info td{
padding:10px;
font-size:14px;
letter-spacing:1px;
border-bottom:dotted 1px #ccc;
display:table-cell;
}
}

.container{
margin:0 20px 45px 20px;
padding:0;
}
.program_top{
margin:0 0 20px 0;
padding:0;
font-size:160%;
font-weight:900;
line-height:150%;
text-align:center;
color:#ff6060;
font-family: "Noto Sans Japanese";
}
.program_head{
margin:0;
padding:20px 0 14px 0;
font-size:140%;
font-weight:900;
line-height:120%;
text-align:center;
color:#fff;
background:#ff6060;
font-family: "Noto Sans Japanese";
}
.program_head span{font-size:80%;font-weight:bold;}
.program_box{
margin:0 0 30px 0;
padding:20px 30px 10px 30px;
border:solid 1px #ff6060;
}
.program_capter{
margin:0;
padding:0;
font-size:100%;
font-weight:bold;
line-height:150%;
color:#ff6060;
font-family: 'Roboto Condensed', sans-serif;
}
.program_title{
margin:0;
padding:0;
font-size:140%;
font-weight:900;
line-height:150%;
font-family: "Noto Sans Japanese";
}
.program_subtitle{
margin:0;
padding:0;
font-size:125%;
font-weight:bold;
line-height:150%;
color:#ff6060;
}
.program_txt{
margin:0 0 25px 0;
padding:5px 0;
font-size:90%;
line-height:180%;
border-bottom:dotted 1px #ccc;
}
@media screen and (min-width:769px){
.container{width:768px;margin:0 auto 90px auto;}
.program_top{margin:0 0 30px 0;font-size:36px;}
.program_head{font-size:32px;}
.program_head span{font-size:24px;}
.program_box{padding:30px 60px;}
.program_capter{font-size:16px;}
.program_title{font-size:28px;}
.program_subtitle{font-size:24px;}
.program_txt{font-size:16px;line-height:160%;letter-spacing:1px;}
}


.menu_title{
margin:0;
padding:0 30px 0 0;
font-size:100%;
font-weight:bold;
line-height:150%;
}
.menu_title span{
font-size:24px;
color:#ff6060;
font-family: 'Roboto Condensed', sans-serif;
}
.menus{
margin:0;
padding:15px 0;
border-bottom:dotted 1px #999;
}
.menu_txt{
margin:0;
padding:0 30px 0 28px;
position:relative;
}
.menu_txt:after {
position:absolute;
top:0;
left:0;
content:"A.";
font-size:24px;
color:#eb7b60;
font-family: 'Roboto Condensed', sans-serif;
}
.trigger{
margin:-30px 0 0 0;
padding:0;
text-align:right;
}
.trigger img{
height:12px;
}
.menus_end{
margin:0;
padding:15px 30px 15px 0;
font-size:100%;
font-weight:bold;
line-height:150%;
border-bottom:dotted 1px #999;
}
.menu_caption{
margin:0;
padding:15px 0;
font-size:75%;
line-height:150%;
text-align:right;
color:#666;
}
@media screen and (min-width:769px) {
#faq{
width:768px;
margin:0 auto;
padding:75px 0;
}
.menu_title{
padding:0 30px 0 0;
font-size:18px;
letter-spacing:1px;
}
.menus{padding:20px 0;}
.menus_end{
padding:20px 30px 20px 0;
font-size:18px;
letter-spacing:1px;
}
.menu_caption{font-size:12px;letter-spacing:1px;}
}



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

.bold{font-weight:bold;}
.ul{text-decoration:underline;}
.red {font-weight:bold;color:#c30d23;}
.green{font-weight:bold;color:#ff6060;}
.white{color:#fff;}
.through{text-decoration:line-through;}
.ym{font-weight:bold;background:linear-gradient(transparent 60%, #fcff80 60%);}
.caption{font-size:75%;color:#666666;font-weight:normal;line-height:180%;}


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

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


/*---------- フッター ----------*/


#footer{
margin:0 auto;
padding:20px 0;
font-size:75%;
line-height:200%;
text-align:center;
color:#fff;
font-family: 'Roboto Condensed', sans-serif;
background:#354341;
}
#footer a:link {color:#666;text-decoration:none;}
#footer a:visited {color:#666;text-decoration:none;}
#footer a:hover {color:#666;text-decoration:underline;}
@media screen and (min-width:769px){
#footer{padding:30px 0;font-size:12px;}
}