@charset "utf-8";

/* ----------------------------------------------------------------
Reset
----------------------------------------------------------------- */

body,div,dl,dt,dd,ul,li,h1,h2,h3,h4,h5,h6,p,a { margin: 0; padding: 0; }
img { border: 0; }
li,dt,dd { list-style: none; }

/* ----------------------------------------------------------------
Common
----------------------------------------------------------------- */

html {
font-size: 62.5%;
}

body {
text-align: center;
color: #333;
background: #fff;
font-family: "Noto Sans Japanese","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
font-size: 1.6rem;
line-height: 3.4rem;
margin: 0 auto;
}

.clear { width:100%; }
.clear:after {
content: ""; 
display: block; 
clear: both;
}

a:link, a:visited {
color: #333;
text-decoration: none;
}

a:active, a:hover {
color: #777;
text-decoration: none;
}

.tac { text-align: center!important; }
.tal { text-align: left!important; }
.tar { text-align: right!important; }

.mgb30 { margin-bottom: 30px!important; }
.mgb40 { margin-bottom: 40px!important; }
.mgb50 { margin-bottom: 50px!important; }
.mgb60 { margin-bottom: 60px!important; }
.mgl20 { margin-left: 20px!important; }

.pc { display: none; }

/* ----------------------------------------------------------------
Header
----------------------------------------------------------------- */

#header {
position: relative;
height: 70px;
margin: 0 auto;
box-sizing: border-box;
border-top: 4px solid #f00;
padding: 10px 0 0 0;
}

#header .inner {
width: 100%;
margin: 0 auto;
padding: 0;
}

#header .inner img {
height: 48px;
margin: auto;
}

#header .center {
display: none;
}

#header .right {
display: none;
}

.gsc-control {
width: 100%;
}

.gsc-input-box {
}

table.gsc-search-box td.gsc-input {
padding: 0;
}

.gsc-search-button-v2 {
padding: 16px 20px!important;
}

.gsc-clear-button {
display: none;
}

.gsib_a {
padding: 0;
}

/* ----------------------------------------------------------------
Navi
----------------------------------------------------------------- */

#navi_sp {
display: visible;
}

#navi {
display: none;
}

/* ----------------------------------------------------------------
Gnavi
----------------------------------------------------------------- */

#gnavi {
z-index: 2;
position: fixed;
bottom: 0;
height: 60px;
width: 100%;
box-sizing: border-box;
background: #fff;
border-top: 1px solid #ddd;
background-color: rgba(255, 255, 255, 1);
}

#gnavi ul {
display: -webkit-flex;
display: flex;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: center;
align-items: center;
}

#gnavi ul li {
width: 50%;
box-sizing: border-box;
text-align: center;
padding: 0 5px;
}

#gnavi ul li:first-child {
height: 60px;
border-right: 1px solid #ccc;
}

#gnavi ul li:last-child {
height: 60px;
}

#gnavi ul li p {
height: 37px;
padding-top: 8px;
box-sizing: border-box;
}

#gnavi ul li h3 {
height: 13px;
font-size: 1.1rem;
line-height: 1.3rem;
text-align: center;
}

#gnavi ul li a {
display: block;
}

#gnavi ul li a:link,
#gnavi ul li a:visited {
color: #333;
}

#gnavi ul li a:hover {
color: #666;
}

#gnavi li a {
position: relative;
display: block;
width: 100%;
height: 40px;
text-align: center;
font-weight: bold;
box-sizing: border-box;
padding: 0;
margin: 0;
}

#gnavi li a:hover {
}

#gnavi li a::after {
border-right: 1px solid #ddd;
}

#gnavi ul li img {
display: block;
height: 26px;
vertical-align: top;
margin: 0 auto;
}

#gnavi ul li a:hover img {
opacity: 0.7;
}

/* ----------------------------------------------------------------
Main Visual
----------------------------------------------------------------- */

#mainvisual {
z-index: 2;
width: 100%;
background: url(/wp-content/uploads/common/bg_mainvisual.png) no-repeat 0 0;
background-size: cover;
border-bottom: 1px solid #dcdcdc;
margin: 0 auto 40px auto;
padding: 40px 0 30px 0;
}

#mainvisual h1 {
font-size: 2rem;
letter-spacing: 0.1rem;
font-weight: bold;
margin: 0 0 10px 0;
padding: 0 10px;
}

#mainvisual p {
color: #f00;
font-size: 1.2rem;
letter-spacing: 0.3rem;
font-weight: bold;
}

#top #mainvisual {
width: 100%;
background: url(/wp-content/uploads/common/mainvisual.jpg) no-repeat 100% 50%;
background-size: cover;
margin: 0 auto 40px auto;
padding: 50px 0;
}

#top #mainvisual .inner {
width: 60%;
margin: 0 auto;
}

#top #mainvisual .inner img {
width: 100%;
}

.slider {
width: 100%;
overflow: hidden;
}

/* ----------------------------------------------------------------
Footerlink
----------------------------------------------------------------- */

#footerlink {
width: 90%;
text-align: left;
margin: 30px auto 20px auto;
padding: 0;
}

#footerlink ul {
width: 100%;
overflow: hidden;
}

#footerlink li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
border: 2px solid #f00;
margin: 0 0 10px 0;
padding: 0;
}

#footerlink li:nth-child(1) {
display: none;
}

#footerlink li:nth-child(4) {
display: none;
}

#footerlink li a {
display: block;
height: 30px;
line-height: 30px;
padding: 8px 20px;
}

#footerlink li a.login {
background: url(/wp-content/uploads/common/icon_key_red.png) no-repeat 95% 50%;
}

#footerlink li a.pdf {
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 95% 50%;
background-size: 12px;
}

#footerlink li a.out {
background: url(/wp-content/uploads/common/icon_link_red.png) no-repeat 95% 50%;
}

#footerlink li a:link, #footerlink li a:visited {
color: #f00;
text-decoration: none;
}

#footerlink li a:hover {
color: #f66;
text-decoration: none;
}

/* ----------------------------------------------------------------
Footer
----------------------------------------------------------------- */

#footer {
display: none;
}

/* ----------------------------------------------------------------
Copyright
----------------------------------------------------------------- */

#copyright {
color: #fff;
background: #222;
width: 100%;
text-align: center;
font-size: 1.1rem;
margin: 0 auto;
padding: 0 0 60px 0;
}

#copyright p {
color: #fff;
line-height: 2.2rem;
margin: 0 auto;
padding: 20px;
}

/* ----------------------------------------------------------------
Content
----------------------------------------------------------------- */

#content {
width: 90%;
margin: 0 auto;
text-align: left;
}

#content a:link, #content a:visited {
color: #3451A4;
text-decoration: underline;
}

#content a:active, #content a:hover {
color: #399ECC;
text-decoration: underline;
}

/* ----------------------------------------------------------------
Top
----------------------------------------------------------------- */

#top #content h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#top #content .block_news {
padding-top: 10px;
margin: 0 0 40px 0;
}

#top #content .block_news h2 {
margin: 0;
}

#top #content h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#top #content .block_news h2 {
height: 20px;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0;
padding: 0 0 15px 30px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
}

#content .block_news h2 .archive {
font-size: 1.3rem;
letter-spacing: 0;
background: #efefef url(/wp-content/uploads/common/icon_news-archive_red.png) no-repeat 10px 50%;
margin: -10px 0 0 auto;
padding: 8px 10px 8px 35px;
}

#content .block_news .archive a:link, #content .block_news .archive a:visited {
color: #282828;
text-decoration: none;
}

#content .block_news .archive a:active, #content .block_news .archive a:hover {
color: #777;
text-decoration: none;
}

#content .block_news ul li {
line-height: 2.2rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 10px 50%;
padding: 14px 20px 14px 30px;
}

#content .block_news ul li .date {
display: block;
font-weight: bold;
font-size: 1.3rem;
margin: 0 0 5px 0;
}

#content .more {
padding-top: 20px;
}

#content .more a {
position: relative;
display: block;
width: 190px;
text-align: center;
font-size: 1.5rem;
letter-spacing: 0.05rem;
color: #222;
text-decoration: none;
box-sizing: border-box;
border: 1px solid #ddd;
border-radius: 30px;
box-sizing: border-box;
padding: 8px 5px 8px 15px;
background: #fff;
margin: 0 auto;
}

#content .more a::before {
position: absolute;
display: inline-block;
content: "";
left: 20px;
top: 15px;
width: 19px;
height: 19px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #333;
}

#content .more a::after {
position: absolute;
display: inline-block;
content: "";
left: 25px;
top: 21px;
width: 5px;
height: 5px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

#content .more a:hover {
color: #222;
background: #f5f5f5;
text-decoration: none;
}

#top #content .block_prof {
margin: 0 0 40px 0;
}

#content .block_prof p {
margin: 0 0 20px 0;
}

#content .block_prof ul {
width: 100%;
}

#content .block_prof li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 20px 15px 0;
}

#content .block_prof li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#content .block_prof li a:link, #content .block_prof li a:visited {
color: #282828;
text-decoration: none;
}

#content .block_prof li a:hover {
color: #777;
text-decoration: none;
}

#top #content .block_banner {
margin: 0;
}

#content .block_banner ul {
width: 100%;
overflow: hidden;
}

#content .block_banner li {
width: 100%;
margin: 0 0 20px 0;
}

#content .block_banner li:last-child {
width: 100%;
margin: 0 0 -10px 0;
}

#content .block_banner li img {
width: 100%;
}

#content .block_banner li a:hover {
opacity: 0.7;
}

/* ----------------------------------------------------------------
Access
----------------------------------------------------------------- */

#access #route {
width: 100%;
margin-bottom: 10px;
}

#access #route .left {
height: 30px;
line-height: 30px;
border-left: 10px solid #ff5100;
padding-left: 15px;
margin-bottom: 10px;
}

#access #route .right {
height: 30px;
line-height: 30px;
border-left: 10px solid #000;
padding-left: 15px;
}

#access #routemap {
width: 100%;
margin-bottom: 60px;
}

#access iframe {
width: 100%;
}

#access .gmap a {
font-size: 1.2rem;
color: #fff;
text-decoration: none;
background: #ff0000;
padding: 5px;
margin-left: 10px;
}

#access .gmap a:hover {
background: #d50a0a;
}

#access .gmap a:link,
#access .gmap a:visited,
#access .gmap a:hover,
#access .gmap a:active; {
color: #fff;
text-decoration: none;
}

#access .unit {
margin: 0;
padding: 0 0 40px 0;
}

#access h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#access .unit h3 {
font-size: 1.5rem;
margin: 0 0 5px 0;
padding: 0;
}

#access .unit p {
margin: 0 0 20px 0;
}

#access .unit p b {
font-size: 1.3rem;
}

#access .unit p#map {
text-align: center;
}

#access .unit p#map img {
width: 100%;
}

#access .unit p#map2 {
text-align: center;
}

#access .unit p#map2 img {
width: 100%;
}

#access .wrap2 {
}

#access .wrap2 .unit {
width: 100%;
margin: 0;
padding: 0 0 40px 0;
}

/* ----------------------------------------------------------------
News archive
----------------------------------------------------------------- */

.news.archive #content h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0;
padding: 0 0 15px 30px;
}

.news.archive #content ul {
margin-bottom: 50px;
}

.news.archive #content li {
line-height: 2.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 0 50%;
padding: 14px 0 14px 20px;
}

.news.archive #content li .date {
display: block;
font-weight: bold;
font-size: 1.3rem;
margin: 0 0 5px 0;
}

/* ----------------------------------------------------------------
Entry
----------------------------------------------------------------- */

#content .entry {
margin: 0;
}

#content .entrycontent {
padding: 0 0 60px 0;
}

#content .entry h2 {
font-size: 1.6rem;
margin: 0 0 20px 0;
}

#content .entry .entrytitle h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#content .entry h3 {
font-size: 1.5rem;
line-height: 2rem;
font-weight: bold;
margin: 40px 0 20px 0;
padding: 5px 0 5px 15px;
border-left: 2px solid #222;
}

#content .entry h4 {
font-size: 1.5rem;
border-bottom: 1px solid #ddd;
margin: 30px 0 20px 0;
padding: 0 0 10px 0;
}

#content .entry p {
margin: 0 0 20px 0;
}

#content iframe {
max-width: 100%;
margin: 0 0 20px 0;
}

#content .entry video {
max-width: 100%;
margin: 0 0 20px 0;
}

.default #content h4 {
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
margin: 0 0 10px 0;
padding: 20px 0 10px 0;
}

.default #content p {
margin: 0 0 20px 0;
}

.default #content video {
margin: 0 0 40px 0;
}

#content .entry .button {
display: block;
width: 220px;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#content .entry .button:link, #content .entry .button:visited {
color: #282828;
text-decoration: none;
}

#content .entry .button:hover {
color: #777;
text-decoration: none;
}

#content .entry a.pdf {
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 0 50%;
padding: 5px 0 5px 25px;
}

/* ----------------------------------------------------------------
Journal
----------------------------------------------------------------- */

#journal #content ul.language {
width: 250px;
overflow: hidden;
display: flex;
flex-wrap: wrap;
border: 1px solid #ccc;
margin: 0 auto 50px auto;
}

#journal #content ul.language li {
display: block;
width: 95px;
font-size: 1.3rem;
line-height: 2.2rem;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 0;
margin: 0;
}

#journal #content ul.language li:first-child {
margin: 0 10px 0 20px;
}

#journal #content ul.language li:last-child {
margin: 0 30px 0 0;
}

#journal #content ul.language li a {
display: block;
width: 45px;
font-size: 1.5rem;
padding: 15px 15px 15px 35px;
margin: 0;
}

#journal #content ul.language li a:link, #journal #content ul.language li a:visited {
color: #282828;
text-decoration: none;
}

#journal #content ul.language li a:hover {
color: #777;
text-decoration: none;
}

#journal #content h2 {
font-size: 1.7rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#journal #content ul {
margin: 0 0 60px 0;
}

#journal #content ul li {
font-size: 1.3rem;
line-height: 2.2rem;
background: #efefef url(/wp-content/uploads/common/icon_pdf.png) no-repeat 15px 50%;
padding: 15px 15px 15px 45px;
margin: 0 0 15px 0;
}

#journal #content ul li span.title {
display: block;
margin: 0 0 5px 0;
}

#journal #content ul li span.page {
color: #999;
font-weight: normal;
letter-spacing: 0rem;
padding: 0;
margin: 0 8px 0 0;
}

#journal #content ul li span.name {
line-height: 2rem;
font-weight: normal;
letter-spacing: 0rem;
border-left: 1px solid #cdcdcd;
padding: 0 10px 0 12px;
margin: 0;
}

#journal #content ul li span.name br {
display: none;
}

#journal #content ul li .title a:link, #journal #content ul li .title a:visited {
color: #282828;
text-decoration: none;
padding: 0 20px 0 0;
}

#journal #content ul li .title a:hover {
color: #777;
text-decoration: none;
}

#journal #content ul li .name a:link, #journal #content ul li .name a:visited {
color: #282828;
text-decoration: none;
background: #efefef url(/wp-content/uploads/common/arrow_right.png) no-repeat 100% 50%;
margin-right: -15px;
padding: 0 15px 0 0;
}

#journal #content ul li .name a:hover {
color: #777;
text-decoration: none;
}

.backissues {
margin: 0 auto 30px auto;
}

.backissues select {
-webkit-appearance: none;
appearance: none;
width: 300px;
box-sizing: border-box;
font-size: 1.5rem;
border: 2px solid #ccc;
border-radius: 0;
background: #fff;
padding: 15px 20px;
}

.backissues .selectbox::after {
content:"";
display:block;
width:10px;
height:10px;
position:absolute;
right:5%;
top:35%;
border-bottom:#333 2px solid;
border-right:#333 2px solid;
transform:rotate(45deg)translateY(-30%);
}

/* ----------------------------------------------------------------
Member
----------------------------------------------------------------- */

#member #content ul.shortcut {
width: 80%;
display: flex;
flex-wrap: wrap;
margin: 0 auto 100px auto;
}

#member #content ul.shortcut li {
width: 50%;
margin: 0;
padding: 0
}

#member #content ul.shortcut li img {
width: 100%;
}

#member #content ul.shortcut li:hover {
background: #efefef;
}

#member #content {
margin-bottom: 60px;
}

#member #content dl {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
}

#member #content dt {
font-weight: bold;
width: 100%;
background: #f1f1f1;
border-right: 1px solid #ccc;
padding: 10px 20px;
}

#member #content dd {
width: 100%;
border-right: 1px solid #ccc;
padding: 10px 20px;
}

#member #content dl:last-of-type {
border-bottom: 1px solid #ccc;
}

#member #content h3 {
font-size: 1.6rem;
}

#member #content p {
margin-bottom: 20px;
}

#member #content dd a.pdf {
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 0 50%;
padding: 5px 0 5px 25px;
margin-bottom: 10px;
}

#member #content dd a.word {
background: url(/wp-content/uploads/common/icon_word.png) no-repeat 0 50%;
padding: 5px 0 5px 25px;
margin-bottom: 10px;
}

/* ----------------------------------------------------------------
Professors' Contact
----------------------------------------------------------------- */

#profcontact table {
margin: 0 0 60px 0;
}

#profcontact table {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 0 0 30px 0;
}

#profcontact table th {
font-size: 1.3rem;
font-weight: normal;
background: #ccc;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 10px;
}

#profcontact table td {
font-size: 1.3rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 10px;
}

#profcontact table tr.alt td.column-1 {
background: #ddd;
}

#profcontact table tr:nth-child(odd) td {
background: #eee;
}

/* ----------------------------------------------------------------
Documents
----------------------------------------------------------------- */

#documents .unit {
margin: 0 0 80px 0;
}

#documents h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#documents #content p {
line-height: 3.4rem;
margin: 0 0 30px 0;
}

#documents #content a.word,
#documents #content a.exel {
background: url(/wp-content/uploads/common/icon_word.png) no-repeat 0 50%;
padding: 5px 0 5px 25px;
margin-bottom: 10px;
}

/* ----------------------------------------------------------------
Certificate
----------------------------------------------------------------- */

#certificate .unit {
margin: 0 0 80px 0;
}

#certificate h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#certificate #content p {
margin: 0 0 30px 0;
}

#certificate #content a.exel {
background: url(/wp-content/uploads/common/icon_word.png) no-repeat 0 50%;
padding: 5px 0 5px 25px;
margin-bottom: 10px;
}

/* ----------------------------------------------------------------
Enquette
----------------------------------------------------------------- */

#enquette p {
margin: 0 0 30px 0;
}

/* ----------------------------------------------------------------
Library
----------------------------------------------------------------- */

#library h3 {
padding: 10px 0 0 0; 
margin: 0 0 10px 0;
}

#library p {
margin: 0 0 20px 0;
}

#library table {
margin: 0 0 60px 0;
}

#library table {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 0 0 30px 0;
}

#library table th {
font-size: 1.3rem;
font-weight: normal;
background: #ccc;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 10px;
}

#library table td {
font-size: 1.3rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 10px;
}

#library table td.column-1 {
width: 30%;
}

#library table tr:nth-child(even) td {
background: #eee;
}

/* ----------------------------------------------------------------
Purpose
----------------------------------------------------------------- */

#purpose .unit {
margin: 0;
padding: 0 0 60px 0;
}

#purpose .unit h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#purpose .unit h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#purpose .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

/* ----------------------------------------------------------------
Greeting
----------------------------------------------------------------- */

#greeting .unit {
margin: 0;
padding: 0 0 60px 0;
}

#greeting .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#greeting .unit h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#greeting .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

/* ----------------------------------------------------------------
Policy
----------------------------------------------------------------- */

#policy .unit {
margin: 0;
padding: 0 0 80px 0;
}

#policy .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#policy .unit h3 {
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#policy .unit h3:after {
content: ""; 
display: block; 
clear: both;
}

#policy .unit h3.black {
color: #fff;
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
background: #454545;
border-bottom: none;
margin: 0 0 30px 0;
padding: 8px 12px;
}

#policy .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

#policy li {
margin: 0 0 10px 0;
}

#policy .subunit {
margin: 0;
padding: 20px 30px 30px 30px;
}

#policy .subunit h4 {
color: #454545;
margin: 0 0 10px 0;
}

#policy .subunit p {
color: #454545;
font-size: 1.2rem;
line-height: 2.4rem;
margin: 0 0 10px 0;
}

#policy .subunit p.sub {
color: #454545;
font-size: 1.2rem;
line-height: 2.4rem;
margin: 0 0 10px 25px;
}

#policy .subunit ul {
margin: 0 0 30px 0;
}

#policy .subunit li {
color: #454545;
font-size: 1.2rem;
line-height: 2.2rem;
list-style-type: disc;
margin: 0 0 8px 20px;
padding: 0 0 0 5px;
}

#policy a {
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 0 50%;
padding: 2px 0 2px 25px;
}

#policy a.out {
background: url(/wp-content/uploads/common/icon_link.png) no-repeat 0 50%;
padding: 2px 0 2px 25px;
}

/* ----------------------------------------------------------------
Privacy
----------------------------------------------------------------- */

#privacy .unit {
margin: 0;
padding: 0 0 50px 0;
}

#privacy .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#privacy h3 {
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#privacy p {
margin: 0 0 40px 0;
padding: 0;
}

#privacy .unit p {
margin: 0 0 10px 0;
padding: 0;
}

#privacy .unit p.date {
text-align: right;
font-size: 1.2rem;
margin: 0;
padding: 0;
}

#privacy ul {
margin: 0 0 40px 0;
padding: 0;
}

#privacy ul ul {
margin: 10px 0 20px 30px;
padding: 0;
}

#privacy ul ul li {
font-size: 1.3rem;
line-height: 2.4rem;
margin: 0 0 10px 0;
padding: 0;
}

/* ----------------------------------------------------------------
Education
----------------------------------------------------------------- */

#education .unit {
margin: 0;
padding: 0 0 60px 0;
}

#education .unit_indent {
padding: 10px 0 0 30px;
}

#education .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#education .unit h3 {
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#education .unit h3:after {
content: ""; 
display: block; 
clear: both;
}

#education .unit h3.black {
color: #fff;
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
background: #454545;
border-bottom: none;
margin: 0 0 30px 0;
padding: 8px 12px;
}

#education .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

#education .unit img {
max-width: 100%;
}

#education li {
margin: 0 0 10px 20px;
padding: 0 0 0 5px;
}

#education li a.pdf {
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 0 50%;
padding: 2px 0 2px 25px;
}

#education li a.out {
background: url(/wp-content/uploads/common/icon_link.png) no-repeat 0 50%;
padding: 2px 0 2px 25px;
}

#education ul.num li {
list-style-type: decimal;
margin: 0 0 10px 20px;
padding: 0 0 0 5px;
}

#education ul ul {
margin: 10px 0 15px 10px;
}

#education ul.num ul li {
list-style-type: none;
line-height: 2rem;
margin: 0 0 8px 0;
}

#education .subunit {
margin: 0;
padding: 20px 30px 30px 30px;
}

#education .subunit h4 {
color: #454545;
margin: 0 0 10px 0;
}

#education .subunit p {
color: #454545;
font-size: 1.2rem;
line-height: 2.4rem;
margin: 0 0 10px 0;
}

#education .subunit p.sub {
color: #454545;
font-size: 1.2rem;
line-height: 2.4rem;
margin: 0 0 10px 25px;
}

#education .subunit ul {
margin: 0 0 30px 0;
}

#education .subunit li {
color: #454545;
font-size: 1.2rem;
line-height: 2.2rem;
list-style-type: disc;
margin: 0 0 8px 20px;
padding: 0 0 0 5px;
}

#education table {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ddd;
border-left: 1px solid #ddd;
margin: 20px 0 70px 0;
padding: 0;
}

#education th {
text-align: center;
color: #444;
font-size: 1.2rem;
line-height: 2rem;
background: #eee;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 8px;
white-space: nowrap;
}

#education td {
color: #444;
font-size: 1.2rem;
line-height: 2rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 8px;
}

#education table.edu3 th {
background: #dedede;
}

#education table.edu3 td {
text-align: center;
}

#education table.edu3 tr:nth-child(odd) td {
background: #eee;
}

#education table.edu4 th {
background: #dedede;
}

#education table.edu4 td {
text-align: center;
}

#education table.edu4 tr:nth-child(odd) td {
background: #efefef;
}

#education .w10 {
width: 10%;
}

#pager {
width: 100%;
margin-bottom: 40px;
}

#pager ul {
width: 100%;
display: flex;
flex-wrap: wrap;
margin: 0 auto;
}

#pager ul li  {
height: 36px;
width: 36px;
text-align: center;
line-height: 36px;
border: 1px solid #999;
margin: 0 5px 5px 0;
padding: 0;
}

#pager ul li a {
display: block;
height: 36px;
width: 36px;
}

#pager ul li a:link, #pager ul li a:visited {
color: #888;
text-decoration: none;
}

#pager ul li.current a:link, #pager ul li.current a:visited {
color: #fff;
background: #777;
}

#pager ul li a:hover {
color: #fff;
background: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Course
----------------------------------------------------------------- */

#course .headline {
margin: 0 0 60px 0;
}

#course .headline h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#course .headline p {
line-height: 3.4rem;
padding: 0 0 20px 0;
}

#course #content .unit {
width: 100%;
margin: 0 0 80px 0;
padding: 0;
display: flex;
flex-wrap: wrap;
}

#course #content .photo {
width: 100%;
}

#course #content .photo img {
width: 100%;
}

#course #content .title {
width: 100%;
}

#course #content .title h2 {
font-size: 1.6rem;
letter-spacing: 0.2rem;
font-weight: bold;
padding: 0;
vertical-align: top;
margin: 0 0 20px 0;
padding: 0;
}

#course #content .title h2 span {
display: block;
color: #fff;
font-size: 1.6rem;
letter-spacing: 0.4rem;
margin: 0 0 0.8rem 0;
padding: 0.8rem 1.6rem;
}

#course #content .title h2.int {
color: #e88121;
}
#course #content .title h2.int span {
background: #e88121;
}

#course #content .title h2.cul {
color: #c14d97;
}
#course #content .title h2.cul span {
background: #c14d97;
}

#course #content .title h2.hum {
color: #00aa7b;
}
#course #content .title h2.hum span {
background: #00aa7b;
}

#course #content .text {
margin: 0 0 30px 0;
}

#course #content .text p {
font-size: 1.4rem;
line-height: 3.2rem;
margin: 0 0 25px 0;
}

#course #content ul {
width: 100%;
overflow: hidden;
margin: 0 auto;
}

#course #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#course #content ul li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 20px 50%;
padding: 12px 20px 12px 45px;
}

#course #content ul li a:link, #course #content ul li a:visited {
color: #282828;
text-decoration: none;
}

#course #content ul li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Syllabus
----------------------------------------------------------------- */

#syllabus #content h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#syllabus #content ul {
width: 100%;
overflow: hidden;
margin: 0 0 60px 0;
}

#syllabus #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
line-height: 2.4rem;
background: #efefef url(/wp-content/uploads/common/icon_pdf.png) no-repeat 10px 50%;
padding: 15px 20px 15px 35px;
margin: 0 0 15px 0;
display: flex;
justify-content: space-between;
align-items: center;
}

#syllabus #content ul li span {
min-width: 90px;
text-align: right;
font-weight: normal;
white-space: nowrap;
letter-spacing: 0rem;
padding: 0 5px 0 0;
}

#syllabus #content ul li span.wide {
width: 170px;
}

#syllabus #content ul li a:link, #syllabus #content ul li a:visited {
color: #282828;
text-decoration: none;
margin-right: -20px;
padding: 0 20px 0 0;
}

#syllabus #content ul li a:hover {
color: #777;
}

#syllabus #content ul li span a:link, #syllabus #content ul li span a:visited {
color: #282828;
background: #efefef url(/wp-content/uploads/common/arrow_right.png) no-repeat 100% 50%;
margin-right: -15px;
padding: 0 15px 0 0;
}

#syllabus #content ul li span a:hover {
color: #777;
}

/* ----------------------------------------------------------------
Prof
----------------------------------------------------------------- */

#prof #content .headline h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 50px 0;
padding: 0 0 15px 30px;
}

#prof #content .unit {
margin: 0 0 120px 0;
padding: 0;
}

#prof #content .unit .photo {
text-align: center;
margin: 0 auto 20px auto;
}

#prof #content .unit .photo img {
width: 150px;
margin: 0 auto;
}

#prof #content .unit .photo #researchmap {
width: 100px;
margin: 5px auto 0 auto; 
}

#prof #content .unit .photo #researchmap img {
width: 100px;
margin: 0 auto; 
}

#prof #content .unit .photo #researchmap img:hover {
opacity: 0.8;
}

#prof #content .unit .text {
width: 100%;
}

#prof #content .unit .text h2 {
font-size: 2.2rem;
letter-spacing: 0.4rem;
font-weight: bold;
text-align: center;
margin: 0 auto 30px auto;
padding: 0;
}

#prof #content .unit .text h2 span.position {
font-size: 1.4rem;
letter-spacing: 0.2rem;
margin-left: 10px;
}

#prof #content .unit .text h2 span.major {
display: block;
color: #fff;
font-size: 1.5rem;
letter-spacing: 0.3rem;
padding: 0.5rem 1rem;
margin: 10px 0;
vertical-align: top;
}

#prof #content .unit .text h2 span.course {
font-size: 1.5rem;
letter-spacing: 0.2rem;
vertical-align: top;
margin: 0 auto;
padding: 0;
}

#prof #content .unit .text h2.int span.major {
background: #e88121;
}
#prof #content .unit .text h2.int span.course {
color: #e88121;
}
#prof #content .unit .text h2.cul span.major {
background: #c14d97;
}
#prof #content .unit .text h2.cul span.course {
color: #c14d97;
}
#prof #content .unit .text h2.hum span.major {
background: #00aa7b;
}
#prof #content .unit .text h2.hum span.course {
color: #00aa7b;
}

#prof #content .unit .text h2 span.accept {
display: inline-block;
color: #fff;
font-size: 1.3rem;
font-weight: normal;
letter-spacing: 0.1rem;
padding: 0.1rem 1rem;
margin: 10px auto;
vertical-align: top;
background: #f00;
}

#prof #content dl:after {
content: ""; 
display: block; 
clear: both;
}

#prof #content dl.class {
line-height: 2.8rem;
margin: 0 20px 30px 40px;
}

#prof #content dl.class dt {
font-weight: bold;
font-size: 1.4rem;
}

#prof #content dl.class dd {
font-size: 1.5rem;
}

#prof #content dl.research {
line-height: 2.8rem;
margin: 0 20px 30px 40px;
}

#prof #content dl.research dt {
font-weight: bold;
font-size: 1.4rem;
}

#prof #content dl.research dd {
font-size: 1.5rem;
}

#prof #content dl.field {
line-height: 2.8rem;
margin: 0 20px 30px 40px;
}

#prof #content dl.field dt {
font-weight: bold;
font-size: 1.4rem;
}

#prof #content dl.field dd {
font-size: 1.5rem;
}

#prof #content dd a:link {
font-weight: bold;
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 0 50%;
padding: 2px 0 2px 22px;
}

#prof #content ul.paging {
width: 100%;
margin: 20px 0 0 0;
}

#prof #content ul.paging li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#prof #content ul.paging li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 20px 50%;
padding: 12px 20px 12px 45px;
}

#prof #content ul.paging li a:link, #prof #content ul.paging li a:visited {
color: #282828;
text-decoration: none;
}

#prof #content ul.paging li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Prof Single
----------------------------------------------------------------- */

#prof.single #content .unit {
margin: 0 0 50px 0;
padding: 0;
border-bottom: none;
}

#prof.single #content dl.class dt.wide {
width: 130px;
}

#prof.single .excerpt {
margin: 0 0 60px 0;
}

#prof.single .block {
margin: 0 0 60px 0;
}

#prof.single .block h3 {
font-size: 1.5rem;
line-height: 3rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 40%;
margin: 0 0 20px 0;
padding: 0 0 10px 30px;
}

#prof.single .block p {
line-height: 3.2rem;
}

#prof.single .block iframe {
max-width: 100%;
}

#prof.single #content p.button {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 50px 0;
}

#prof.single #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#prof.single #content p.button a:link, #prof.single #content p.button a:visited {
color: #282828;
text-decoration: none;
}

#prof.single #content p.button a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Prof Con
----------------------------------------------------------------- */

#prof_con #content h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.4rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#prof_con #content ul {
width : calc(100% + 15px) ;
display: flex;
flex-wrap: wrap;
overflow: hidden;
margin: 0 0 60px 0;
}

#prof_con #content ul li {
width : calc(50% - 15px) ;
box-sizing: border-box;
font-weight: bold;
font-size: 1.3rem;
padding: 10px 12px 10px 15px;
margin: 0 15px 15px 0;
background: #efefef;
}

#prof_con #content ul li span {
font-weight: normal;
margin-left: 10px;
}

/* ----------------------------------------------------------------
Interview
----------------------------------------------------------------- */

#prof.interview #content .excerpt {
margin: 0 0 50px 0;
padding: 0;
}

#prof.interview #content .unit {
margin: 0 0 50px 0;
padding: 0;
border-bottom: none;
}

#prof.interview .block {
margin: 0 0 60px 0;
}

#prof.interview #content h3 {
font-size: 1.5rem;
line-height: 3rem;
border-bottom: 1px solid #ddd;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 40%;
margin: 0 0 20px 0;
padding: 0 0 10px 30px;
}

#prof.interview #content p {
line-height: 3.2rem;
margin: 0 0 20px 0;
}

#prof.interview #content li {
margin: 0 0 10px 0;
}

#prof.interview #content p.button {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 50px 0;
}

#prof.interview #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#prof.interview #content p.button a:link, #prof.interview #content p.button a:visited {
color: #282828;
text-decoration: none;
}

#prof.interview #content p.button a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Voice
----------------------------------------------------------------- */

#voice #content .unit {
margin: 0 0 120px 0;
padding: 0;
}

#voice #content .unit .photo {
width: 100%;
text-align: center;
margin: 0 auto 20px auto;
}

#voice #content .unit .text {
width: 100%;
}

#voice #content .unit .text h2 {
text-align: center;
font-size: 1.9rem;
letter-spacing: 0.1rem;
margin-bottom: 40px;
}

#voice #content .unit .text h2 span {
color: #fff;
font-size: 1.3rem;
letter-spacing: 0rem;
font-weight: bold;
margin-left: 5px;
padding: 0.6rem 1rem;
vertical-align: top;
}

#voice #content .unit .text h2 span.course_int {
background: #e88121;
}
#voice #content .unit .text h2 span.course_cul {
background: #c14d97;
}
#voice #content .unit .text h2 span.course_hum {
background: #00aa7b;
}
#voice #content .unit .text h2 span.course_soc {
background: #00479d;
}

#voice #content .unit .text h3 {
font-size: 2.3rem;
line-height: 3.6rem;
letter-spacing: 0.1rem;
font-weight: normal;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
margin-bottom: 30px;
}

#voice #content .unit .text p {
font-size: 1.4rem;
line-height: 3.4rem;
font-weight: normal;
margin: 0 0 40px 0;
}

#voice #content ul {
width: 100%;
overflow: hidden;
margin: 20px 0 0 0;
}

#voice #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#voice #content ul li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 20px 50%;
padding: 12px 20px 12px 45px;
}

#voice #content ul li a:link, #voice #content ul li a:visited {
color: #282828;
text-decoration: none;
}

#voice #content ul li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Feature
----------------------------------------------------------------- */

#feature .headline {
margin: 0 0 100px 0;
padding: 0;
}

#feature .headline h3 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#feature .headline p {
margin: 0 0 20px 0;
padding: 0;
}

#feature .unit {
border-bottom: 1px solid #ddd;
margin: 0 0 60px 0;
padding: 0 0 60px 0;
}

#feature #content .col1 {
margin: 0 0 20px 0;
}

#feature #content .col2 {
width: 100%;
}

#feature #content .col2 p {
margin: 0 0 20px 0
}

#feature #content .col3 {
width: 100%;
}

#feature #content .col3 img {
width: 100%;
}

#feature #content h2 {
clear: both;
font-size: 2rem;
line-height: 3rem;
font-weight: normal;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
margin-bottom: 20px;
}

/* ----------------------------------------------------------------
Q & A
----------------------------------------------------------------- */

#faq .unit {
margin: 0;
padding: 0 0 40px 0;
}

#faq #content h2 {
font-size: 1.6rem;
line-height: 3rem;
background: #eee;
margin: 0 0 20px 0;
padding: 15px 20px 15px 20px;
}

#faq #content h2 span {
color: #f00;
font-size: 2rem;
line-height: 2rem;
margin: 0 15px 0 0;
padding: 15px 0;
}

#faq #content p {
margin: 0 0 20px 0;
}

#faq table {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 0 0 30px 0;
}

#faq table th {
font-size: 1.1rem;
line-height: 2rem;
font-weight: normal;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 3px 5px;
}

#faq table td {
font-size: 1.1rem;
line-height: 2rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 3px 5px;
}

#faq table.schedule th {
width: 40px;
background: #eee;
padding: 3px 5px;
}

#faq table.schedule td {
padding: 3px 5px;
}

#faq table.ratio {
margin: 0 0 40px 0;
}

#faq table.ratio th {
font-weight: bold;
background: #ddd;
padding: 3px 5px;
}

#faq table.ratio td {
padding: 3px 5px;
}

#faq table.ratio tr:nth-child(even) td {
background: #fff;
}

#faq table.ratio tr:nth-child(odd) td {
background: #eee;
}

#faq table.system th {
width: 120px;
}

#faq #content p.button {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 50px 0;
}

#faq #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#faq #content p.button a:link, #faq #content p.button a:visited {
color: #282828;
text-decoration: none;
}

#faq #content p.button a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Annual Schedule
----------------------------------------------------------------- */

#schedule h2 {
font-size: 1.8rem;
line-height: 2rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#schedule table {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 20px 0 40px 0;
padding: 0;
}

#schedule th {
text-align: center;
color: #282828;
font-size: 1.2rem;
line-height: 2rem;
background: #eee;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 8px;
white-space: nowrap;
}

#schedule td {
vertical-align: top;
color: #282828;
font-size: 1.2rem;
line-height: 2rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 8px;
}

#schedule .excerpt,
#schedule .detail {
width: 46%;
box-sizing: box;
}

#schedule .month {
font-weight: bold;
text-align: center;
background: #efefef;
padding: 10px 5px;
}

#schedule p {
margin: 0 0 50px 0;
padding: 0;
}

#schedule td p {
margin: 0 0 30px 0;
padding: 0;
}

/* ----------------------------------------------------------------
Long term study
----------------------------------------------------------------- */

#lts h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#lts h3 {
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 30px 0 10px 0;
}

#lts h4 {
font-size: 1.4rem;
font-weight: normal;
margin: 0 0 10px 0;
}

#lts #content p {
margin: 0 0 30px 0;
}

#lts #content p:last-child {
margin: 0 0 80px 0;
}

.scroll-table {
overflow: auto;
white-space: nowrap;
}

#lts table.fee {
width: 100%;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 0 0 30px 0;
}

#lts table.fee th {
font-size: 1.2rem;
line-height: 2rem;
font-weight: bold;
text-align: center;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
background: #ddd;
padding: 5px 5px;
}

#lts table.fee td {
text-align: right;
font-size: 1.2rem;
line-height: 2rem;
white-space: nowrap;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 5px;
}

#lts table.fee tr:nth-child(even) td {
background: #fff;
}

#lts table.fee tr:nth-child(odd) td {
background: #eee;
}

#lts table.apply {
width: 100%;
border-collapse: collapse;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin: 0 0 30px 0;
}

#lts table.apply th {
width: 17%;
font-size: 1.2rem;
line-height: 2rem;
font-weight: normal;
vertical-align: top;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
background: #eee;
padding: 5px 5px;
}

#lts table.apply td {
font-size: 1.2rem;
line-height: 2rem;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px 5px;
}

/* ----------------------------------------------------------------
Learning
----------------------------------------------------------------- */

#learning .unit {
margin: 0;
padding: 0 0 80px 0;
}

#learning h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#learning .unit p {
margin: 0 0 20px 0;
}

#learning #content p.button {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 20px 0;
}

#learning #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#learning #content p.button a:link, #learning #content p.button a:visited {
color: #282828;
text-decoration: none;
}

#learning #content p.button a:hover {
color: #777;
text-decoration: none;
}

#learning .flowwrap {
width: 100%;
overflow: hidden;
margin: 0;
padding: 0;
}

#learning .flow {
width: 100%;
box-sizing: border-box;
box-sizing: border-box; 
border: 3px solid #ddd;
margin: 0 20px 20px 0;
padding: 20px 10px;
}

#learning .flow h3 {
width: 50px;
text-align: center;
border-bottom: 5px solid #eee;
padding: 0 0 20px 0;
margin: 0 auto 10px auto;
}

#learning .flow h3 .step {
display: block;
font-family: 'Oswald', sans-serif;
font-weight: 400;
letter-spacing: 0.2rem;
font-size: 1.2rem;
margin: 0 0 5px 0;
}

#learning .flow h3 .num {
display: block;
font-size: 3rem;
letter-spacing: 0.2rem;
font-weight: 300;
font-family: 'Oswald', sans-serif;
}

#learning .flow h4 {
text-align: center;
font-size: 1.4rem;
font-weight: bold;
margin: 0 auto;
}

#learning .flowarrow {
display: none;
}

#learning .flow5 {
width: 100%;
box-sizing: border-box; 
border: 3px solid #ddd;
margin: 0 0 40px 0;
padding: 30px;
}

#learning .flow5 h4 {
text-align: center;
font-size: 1.4rem;
font-weight: bold;
margin: 0 auto 20px auto;
}

#learning .innerwrap {
width: 100%;
margin: 0 auto;
padding: 0;
}

#learning .inner {
width: 100%;
box-sizing: border-box; 
margin: 0 auto 60px auto;
padding: 0;
}

#learning .inner:last-child {
margin: 0 auto 0 auto;
}

#learning .inner img {
width: 100%;
}

#learning .unit p img {
max-width: 100%;
}

/* ----------------------------------------------------------------
Guideline
----------------------------------------------------------------- */

#guideline .unit {
margin: 0;
padding: 0 0 100px 0;
}

#guideline .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#guideline .unit h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#guideline .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

#guideline #content ul {
width: 100%;
overflow: hidden;
margin: 20px 0 0 0;
}

#guideline #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#guideline #content ul li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#guideline #content ul li a.out {
background: url(/wp-content/uploads/common/icon_link_red.png) no-repeat 15px 50%;
}

#guideline #content ul li a:link, #guideline #content ul li a:visited {
color: #282828;
text-decoration: none;
}

#guideline #content ul li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Research Plan
----------------------------------------------------------------- */

#research-plan .unit {
margin: 0;
padding: 0 0 100px 0;
}

#research-plan .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#research-plan .unit h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#research-plan .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

#research-plan #content ul {
width: 100%;
overflow: hidden;
margin: 20px 0 0 0;
}

#research-plan #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#research-plan #content ul li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/icon_word.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#research-plan #content ul li a:link, #research-plan #content ul li a:visited {
color: #282828;
text-decoration: none;
}

#research-plan #content ul li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Application Docs
----------------------------------------------------------------- */

#application-docs .unit {
margin: 0;
padding: 0 0 100px 0;
}

#application-docs .unit h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#application-docs .unit h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 10px 0;
padding: 10px 0 10px 0;
}

#application-docs .unit p {
line-height: 3.4rem;
margin: 0 0 20px 0;
}

#application-docs #content ul {
width: 100%;
overflow: hidden;
margin: 20px 0 0 0;
}

#application-docs #content ul li {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 15px 0;
}

#application-docs #content ul li a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/icon_word.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#application-docs #content ul li a:link, #application-docs #content ul li a:visited {
color: #282828;
text-decoration: none;
}

#application-docs #content ul li a:hover {
color: #777;
text-decoration: none;
}

/* ----------------------------------------------------------------
Brochure
----------------------------------------------------------------- */

#brochure h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#brochure #content .unit {
margin: 0 0 50px 0;
padding: 0;
}

#brochure #content .unit .photo img {
width: 100%;
}

#brochure #content .unit .text {
width: 100%;
}

#brochure h3 {
display: inline-block;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.1rem;
border-bottom: 1px solid #dedede;
margin: 0 0 20px 0;
padding: 10px 0 10px 0;
}

#brochure .unit p {
margin: 0 0 20px 0;
}

#brochure .unit p.line {
margin: 0 0 40px 0;
}

#brochure .unit p.line img {
width: 200px;
}

#brochure .unit p.line img:hover {
opacity: 0.8;
}

#brochure #content p.button,
#brochure #content p.pdf {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 60px 0;
}

#brochure #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#brochure #content p.pdf a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/icon_pdf.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#brochure #content p.button a:link, #brochure #content p.button a:visited,
#brochure #content p.pdf a:link, #brochure #content p.pdf a:visited {
color: #282828;
text-decoration: none;
}

#brochure #content p.button a:hover,
#brochure #content p.pdf a:hover {
color: #777;
text-decoration: none;
}

#brochure .iframe {
margin: 0 0 20px 0;
}

/* ----------------------------------------------------------------
Contact
----------------------------------------------------------------- */

#contact .unit {
margin: 0 0 80px 0;
padding: 0;
}

#contact h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#contact .unit p {
margin: 0 0 20px 0;
padding: 0;
}

#contact #content p.button {
width: 100%;
box-sizing: border-box;
font-weight: bold;
font-size: 1.4rem;
letter-spacing: 0.1rem;
background: #efefef;
margin: 0 0 50px 0;
}

#contact #content p.button a {
display: block;
height: 30px;
line-height: 30px;
background: url(/wp-content/uploads/common/arrow_right.png) no-repeat 15px 50%;
padding: 12px 20px 12px 45px;
}

#contact #content p.button a:link, #contact #content p.button a:visited {
color: #282828;
text-decoration: none;
}

#contact #content p.button a:hover {
color: #777;
text-decoration: none;
}

#mainvisual.journal-top {
z-index: 2;
width: 100%;
height: auto;
background: url(/wp-content/uploads/common/bg_mainvisual.png) no-repeat 0 0;
background-size: cover;
border-bottom: 1px solid #dcdcdc;
margin: 0 auto 60px auto;
}

#mainvisual.journal-top h1 {
font-size: 2.2rem;
letter-spacing: 0.1rem;
font-weight: bold;
padding: 40px 0 10px 0;
}

#mainvisual.journal-top h2 {
text-align: center;
font-size: 1.8rem;
line-height: 2.8rem;
font-weight: normal;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
background: none;
margin: 20px 0;
}

#mainvisual.journal-top p {
color: #000;
font-size: 1.2rem;
letter-spacing: 0.1rem;
font-weight: normal;
}

#mainvisual.journal-top p span {
display: inline-block;
margin-top: 20px;
}

.btn a {
font-size: 1.3rem;
background: #fff;
border-radius: 3px;
position: relative;
display: flex;
width: 200px;
justify-content: space-around;
align-items: center;
margin: 0 auto;
box-sizing: border-box;
padding: 8px 12px;
color: #313131;
border: 1px solid #ccc;
font-weight: 500;
}

.btn a:hover {
background: #313131;
color: #FFF;
}

.btn a::before {
content: '';
width: 5px;
height: 5px;
border-top: 2px solid #313131;
border-right: 2px solid #313131;
transform: rotate(45deg) translateY(-50%);
position: absolute;
top: 50%;
left: 20px;
border-radius: 1px;
}

.btn a:hover::before {
border-top: 2px solid #fff;
border-right: 2px solid #fff;
}

#mainvisual.journal-top .backissues {
margin: 30px auto 40px auto;
}

#mainvisual.journal-top .backissues select {
-webkit-appearance: none;
appearance: none;
width: 200px;
box-sizing: border-box;
font-size: 1.5rem;
border: 2px solid #ccc;
border-radius: 0;
background: #fff;
padding: 12px 20px;
}

#mainvisual.journal-top .backissues .selectbox::after {
content:"";
display:block;
width:10px;
height:10px;
position:absolute;
right:5%;
top:35%;
border-bottom:#333 2px solid;
border-right:#333 2px solid;
transform:rotate(45deg)translateY(-30%);
}

#cover {
width: 100%;
text-align: center;
border: solid 1px #999;
outline: solid 2px #999;
outline-offset: 2px;
box-sizing: border-box;
margin-bottom: 60px;
padding: 35px 30px 20px 30px;
}

#cover .backissues select {
-webkit-appearance: none;
appearance: none;
width: 200px;
box-sizing: border-box;
font-size: 1.5rem;
border: 2px solid #ccc;
border-radius: 0;
background: #fff;
padding: 12px 20px;
}

#cover .backissues .selectbox::after {
content:"";
display:block;
width:10px;
height:10px;
position:absolute;
right:5%;
top:35%;
border-bottom:#333 2px solid;
border-right:#333 2px solid;
transform:rotate(45deg)translateY(-30%);
}

#journal #content #cover h2 {
text-align: center;
font-size: 2.4rem;
line-height: 3.6rem;
font-weight: normal;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
background: none;
margin-bottom: 20px;
}

#cover h3 {
text-align: center;
font-size: 1.9rem;
line-height: 3rem;
font-weight: normal;
font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
margin-bottom: 20px;
}

#cover p {
text-align: center;
margin-bottom: 15px;
}

#content #cover a:link, #content #cover a:visited {
text-decoration: none;
}

#content #cover a:active, #content #cover a:hover {
text-decoration: none;
}

#content #cover .btn a {
font-size: 1.3rem;
background: #fff;
border-radius: 3px;
position: relative;
display: flex;
justify-content: space-around;
align-items: center;
margin: 0 auto;
box-sizing: border-box;
width: 150px;
padding: 8px 12px;
color: #313131;
border: 1px solid #ccc;
font-weight: 500;
}

#content #cover .btn a:hover {
background: #313131;
color: #FFF;
}

#content #cover .btn a::before {
content: '';
width: 5px;
height: 5px;
border-top: 2px solid #999;
border-right: 2px solid #999;
transform: rotate(45deg) translateY(-50%);
position: absolute;
top: 50%;
left: 20px;
border-radius: 1px;
}

#content #cover .btn a:hover::before {
border-top: 2px solid #fff;
border-right: 2px solid #fff;
}

#colophon {
width: 100%;
border: solid 1px #999;
outline: solid 2px #999;
outline-offset: 2px;
box-sizing: border-box;
margin-bottom: 60px;
padding: 35px 30px 20px 30px;
}

#colophon h3 {
text-align: center;
font-size: 1.8rem;
line-height: 3rem;
margin-bottom: 20px;
}

#colophon p {
text-align: center;
margin-bottom: 15px;
}

.fix p {
margin-bottom: 20px;
}

.fix table {
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
border-collapse: collapse;
margin-bottom: 60px;
}

.fix table th {
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
background: #eee;
padding: 15px 25px;
}

.fix table td {
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
vertical-align: top;
padding: 15px 25px;
}

#journal.journal-first #content ul li {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
width: 940px;
font-size: 1.3rem;
line-height: 2.2rem;
background: #efefef;
padding: 14px 12px 14px 25px;
margin: 0 0 15px 0;
}

#journal.journal-first #content ul li .max {
width: 320px;
}

#journal.journal-first #content ul li .wide {
width: 150px;
}

#content span.btn a:link, #content span.btn a:visited {
color: #313131;
text-decoration: none;
}

#content span.btn a:active, #content span.btn a:hover {
color: #fff;
text-decoration: none;
}

#pagetotop {
z-index: 3;
position: fixed;
display: block;
right: 10px;
bottom: 70px;
letter-spacing: 0;
width: 30px;
height: 30px;
background: #222;
}

#pagetotop a {
text-align: center;
width: 30px;
height: 30px;
font-size: 0.9rem;
line-height: 1.3rem;
font-weight: bold;
display: -webkit-flex;
display: flex;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: flex-end;
align-items: flex-end;
}

#pagetotop a span {
font-size: 0;
}

#pagetotop a:link,
#pagetotop a:visited {
color: #fff;
}

#pagetotop a:hover {
cursor: pointer;
color: #ccc;
}

#pagetotop span::before {
position: absolute;
display: inline-block;
content: "";
right: calc(50% - 5px);
top: calc(50% - 3px);
width: 8px;
height: 8px;
border-top: 2px solid #fff!important;
border-right: 2px solid #fff!important;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

#pagetotop a:hover span::before {
border-top: 2px solid #fff!important;
border-right: 2px solid #fff!important;
}

/* ---------------------------------------------------------------------------------------------
Spnavi
--------------------------------------------------------------------------------------------- */

.drawer--top.drawer-open .drawer-nav {
    top: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }

  .drawer--left.drawer-open .drawer-nav,
  .drawer--left .drawer-hamburger,
  .drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
    left: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }

  .drawer--right.drawer-open .drawer-nav,
  .drawer--right .drawer-hamburger,
  .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    right: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }


#subnavi_nu {
padding-bottom: 60px;
}


.open-btn{
	position: absolute;
	top:10px;
	right:10px;
	background:#fff url("/icon_search.svg") no-repeat 15px center;/*虫眼鏡アイコンを背景に表示*/
	background-size: 20px 20px;
	width:50px;
	height:50px;
	border-radius: 50%;
	cursor: pointer;
}

/*========= 検索窓の設定 ===============*/

/*==検索窓背景のエリア*/

#search-wrap{
    position:fixed;/*固定配置にして*/
	top: 0;
    left: 0;
	z-index: -1;/*最背面に設定*/
	opacity: 0;/*透過を0に*/
	transition: all 0.4s;/*transitionを使ってスムースに現れる*/
	width:100%;
	height: 100vh;
}

/*ボタンクリック後、JSで#search-wrapに panelactive クラスが付与された後の見た目*/
#search-wrap.panelactive{
opacity: 1;/*不透明に変更*/
z-index: 3;/*全面に出現*/
background:rgba(0,0,0,0.7);
/*中の要素を天地中央揃えにする設定*/
display: flex;
justify-content: center;
padding-top: 70px;
}

/*==検索窓のエリア*/

#search-wrap .search-area{
	display: none;/*検索窓のエリアは、はじめ非表示*/
}

/*ボタンクリック後、JSで#search-wrapに panelactive クラスが付与された後*/
#search-wrap.panelactive .search-area{
display: block;/*検索窓エリアを表示*/
width:80%;
position: relative;
opacity: 1;
z-index: 4;
}

/*==検索フォームの設定*/

#search-wrap form{
	position: relative;
}

/*==テキスト入力とボタンinput共通設定*/
#search-wrap input{
	-webkit-appearance:none;/*SafariやChromeのデフォルトの設定を無効*/
	outline: none;
	cursor: pointer;/*カーソルを指マークに*/
	color: #222;
}

/*テキスト入力input設定*/
 #search-wrap input[type="text"] {
	width: 100%;
	padding: 20px;
	border: none;
	border-bottom:2px solid #666;
	transition: all 0.5s;
	letter-spacing: 0.05em;
}

 #search-wrap input[type="text"]:focus {
	background:#fff;
}

/*ボタンinput設定*/
 #search-wrap input[type="submit"] {
	position: absolute;
	 top:0;
	right:10px;
	background:url("/icon_search.svg") no-repeat 15px center;/*虫眼鏡アイコンを背景に表示*/
	background-size: 25px 25px;
	width:60px;
	height: 60px;
}

/*=======　閉じるための×ボタン　========*/
.close-btn{
	position: absolute;
	top:10px;
	right:10px;
	z-index: 2;
	cursor: pointer;
    width: 60px;
    height:60px;
}
	
.close-btn span{
    display: inline-block;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #fff;
 }

/*×マーク*/
.close-btn span:nth-of-type(1) {
    top: 21px;
    left: 16px;
    transform: translateY(6px) rotate(-135deg);
    width: 50%;
}

.close-btn span:nth-of-type(2){
    top: 32px;
    left: 16px;
    transform: translateY(-6px) rotate(135deg);
    width: 50%;
}

.gs-title {
text-align: left;
}

.metaslider .flex-viewport {
overflow: visible !important;
}

html {
overflow-x:hidden;
}

/* ----------------------------------------------------------------
LP
----------------------------------------------------------------- */

#lp h2 {
font-size: 1.8rem;
line-height: 2.4rem;
letter-spacing: 0.2rem;
border-bottom: 1px solid #dedede;
background: url(/wp-content/uploads/common/icon_headline.png) no-repeat 0 30%;
margin: 0 0 20px 0;
padding: 0 0 15px 30px;
}

#lp .lp_column2 {
width: 100%;
margin: 0 auto 100px auto;
}


#lp .lp_column2 .text p.sp {
margin-top: 20px;
}

#lp .photo.left {
margin-bottom: 50px;
}

#lp .photo {
width: 100%;
}

#lp .photo img {
width: 100%;
}

#lp .text {
width: 100%;
}

#lp .text img {
width: 100%;
}

#lp .lp_title {
width: 80%;
margin: 0 auto 50px auto;
}

#lp .lp_title img {
width: 100%;
}

#lp .text .bg {
background: #f2f2f2;
box-sizing: border-box;
padding: 20px;
margin-top: 20px;
}

#lp .lp_inquiry {
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: flex-start;
align-items: flex-start;
margin: 0 auto 100px auto
}

#lp .lp_inquiry .text {
width: 80%;
margin: 0 auto 30px auto;
}

#lp .lp_inquiry .text img {
width: 100%;
}

#lp .lp_inquiry .text a:hover img {
opacity: 0.9;
}

