@charset "utf-8";

@import url('https://fonts.googleapis.com/earlyaccess/notosansjp.css');
@import url('https://fonts.googleapis.com/css?family=Roboto:400,700,900');
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,500,600,700');

@media screen and (min-width: 671px) {
/* reset css */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }body { line-height: 1; }article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }nav ul { list-style: none; }blockquote, q { quotes: none; }blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }/* change colours to suit your needs */ins { background-color: #ff9; color: #000; text-decoration: none; }/* change colours to suit your needs */mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }del { text-decoration: line-through; }abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }table { border-collapse: collapse; border-spacing: 0; }/* change border colour to suit your needs */hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }input, select { vertical-align: middle; }


/*
 * defaut style
 */
html { height: 100%; overflow-y: scroll; font-size:1.45vw; margin-top:0!important; }
body { /* min-height:100%; */  font-size: 100%; color: #333333; word-wrap: break-word; overflow:hidden; background:#fff; -webkit-font-smoothing: antialiased; }
body { font-family:'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
div { font-size:16px; }
table { word-break: break-word; }
img { max-width: 100%; height: auto; width: auto; vertical-align: bottom; border: none; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
li { list-style-type: none; }
ol { margin-bottom:1.5em; }
ol li {  margin-left:20px; padding-left:5px; list-style-type:decimal; margin-bottom:0.2em; line-height:180%; }
ul { margin-bottom:1.5em; }
ul li {  margin-left:20px; padding-left:0px; list-style-type:disc; margin-bottom:0.5em; line-height:180%; }
dt { font-weight:bold; line-height:160%; margin-bottom:0.5em; font-size:15px; }
dd { margin-bottom:1.5em; line-height:160%; font-size:15px; }
p { margin-bottom: 2.5em; line-height:200%; }
p:last-child { margin-bottom:0; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }
sup { position: relative; font-size: 100%; top: -5px; }
sub { position: relative; font-size: 100%; bottom: -5px; }
.clearfix { *zoom: 1; }
.clearfix:after { content: ''; display: block; clear: both; height: 0; margin-top: -1px; }
.sp { display: none!important; }
.center { text-align:center; }
.pc-center { text-align:center; }
.right { text-align:right; } 
.pc-right { text-align:right; } 
strong { /* color:#C00; */ }
em { /* color:#960; */ font-weight:bold; font-style:normal; }
* { box-sizing:border-box; }
.eng { font-family:"Montserrat"; }



/*
 * header & footer
 */


/*
 * contents
 */
.contents { }
.content-wrapper { }
.main-content { max-width:1100px; margin:0 auto; padding:0 30px; position:relative; box-sizing:content-box; }


/* 汎用 */
.section { margin-bottom:60px; max-width:1100px; margin-top:-80px; padding-top:80px; }
/*.section:first-child { margin-top:0px; padding-top:0px; }*/
.article { margin:0 40px; }
.article p { line-height:200%; }
.indent01 { margin:0 45px 0; }
.red { color:#e60012; }
.note { font-size:15px; }
.caption { margin-top:2rem; line-height:160%; }
.section p a { text-decoration:underline; }
.section p a:hover { color:#2ca7d5; text-decoration:none; }

.main-title { margin-bottom:80px; position:relative; margin-top:-210px; margin-bottom:230px; }
.main-title h1 > span { position:relative; display:inline-block; white-space: nowrap; }

.title01 {}
.title01 span { }
.title02 {}
.title02 span { }

.btn01 { }
.btn01 a { }
.btn01 a:before{
content:"";
display:block;
width: 4px;
height: 4px;
border-top: 2px solid #333;
border-right: 2px solid #333;
transform: rotate(45deg) translate(0,-50%);
position:absolute;
top:50%;
right:20px;
transition-duration: .4s;
z-index:2;
}

.box-left *:last-child,
.box-right *:last-child { margin-bottom:0; }
.box01 {}
.box01 .box-left {}
.box01 .box-right {}

.box-flex01 {  }
.box-flex01 > .item { } 
.box-flex01 > .item:last-child { }


.table01 { position:relative;  border-bottom:1px solid #bfbfbf; border-top:1px solid #bfbfbf; padding:20px 0; }
.table01 table { /* border-spacing:30px; margin:-30px; */ border-collapse:separate; width:100%; max-width:800px; margin:0 auto; }
.table01 th { line-height:200%; width:calc(150 / 1100 * 100%); min-width:120px; padding:0 30px 35px 30px; white-space:nowrap; font-weight:normal; text-align:left; }
.table01 td { line-height:200%; color:#333; padding:0 0 35px 30px; }
.table01 tr:first-child th { padding-top:30px; }
.table01 tr:first-child td { padding-top:30px; }


/* home */
.top-box { position:absolute; left:50%; top:50%; transform:translate(-49.9%,-49.9%); text-align:center; }
.logo { margin-bottom:90px; }
.cs { margin-bottom:90px; }



.pager { text-align:center; margin:50px 0; }
.pager a { margin:0 8px; color:#333; text-decoration:underline; }
.pager a.current { text-decoration:none; }
.article-nav { position:relative; width:100%; margin:80px auto 0; }
.article-nav .prev-next { }
.article-nav .prev { float:left; }
.article-nav .next { float:right; }


/* wordpress エディター */
.editor { margin-top:15px; }
.editor a { color:#333; text-decoration:underline; }
.editor a:hover { text-decoration:none; }
.editor p { }
.editor h1 { font-size:16px; background:#eff0f0; font-weight:bold; margin:50px 0 30px; padding:16px; line-height:140%;}
.editor h2 { position:relative; font-size:16px; border-left:3px solid #bfbfbf; font-weight:bold; margin:50px 0 40px; padding:2px 16px; line-height:140%;}
.editor h2:after { position:absolute; left:0; bottom:-10px; content:""; display:block; width:100%; height:1px; background:#d8d8d8;  }
.editor h3,
.editor h4,
.editor h5,
.editor h6 { font-size:16px; margin:50px 0 40px; }
.editor li { line-height:150%; margin-bottom:5px; font-size:16px; }
.editor ol li { margin-left:0; }
.editor figcaption { line-height: 160%; font-size: 85%; text-align:center; }

.editor  .alignleft {
	float: left;
	margin: 0 28px 28px 0;
	max-width:520px;
	width:calc(520 / 1100 * 100%);
}

.editor  .alignright {
	float: right;
	margin: 0 0 28px 28px;
	max-width:520px;
	width:calc(520 / 1100 * 100%);
}

.editor  .aligncenter {
	clear: both;
	display: block;
	margin: 0 auto 28px;
}

.editor  blockquote.alignleft,
.editor  blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}

.editor  blockquote.alignleft p,
.editor  blockquote.alignright p {
	margin-bottom: 17px;
}

.editor  ul,
.editor  ol {
	list-style: none;
	margin: 0 0 24px 20px;
	padding-left: 20px;
	overflow:hidden;
}

.editor  ul li {
	list-style: disc;
}

.editor  ol li {
	list-style: decimal;
	margin-left:0!important;
}

.editor  li > ul,
.editor  li > ol {
	margin: 0 0 0 20px;
}


.editor table { width:100%; margin:0 auto 40px; line-height:180%; border:1px solid #bfbfbf; border-collapse:collapse; font-size:16px; }
.editor table th { position:relative; border:1px solid #bfbfbf; padding:15px 25px; font-weight:normal; text-align:center; }
.editor table td { position:relative; border:1px solid #bfbfbf; padding:15px 25px; font-weight:normal; }
.editor table tr *:nth-child(1) { width:145px; }
.editor table tr:nth-child(2n+1) > * { background:#f5f5f5; }


.editor blockquote { color:#666; font-style:italic; position:relative; padding:10px 10px 10px 35px; background:#f6f6f6; margin-bottom:2.5em; }
.editor blockquote:before { content:'"'; font-size:50px; position:absolute; left:0; top:20px; }

.editor figure { margin-bottom:2.5em; max-width:100%; }
.editor figure img { margin-bottom:10px; }




/* animation */
.standby { transform: translateY(30px); opacity:0; }
.is-animated { transition-delay:0.50s!important; transform: translateY(0px); opacity:1; transition-duration: .5s!important; transition-property:transform,opacity!important; }
.is-completed { transition-delay:0s!important; transition-duration:0s!important; }

}



@media screen and (min-width: 1101px) {

}

@media screen and (min-width: 671px) and (max-width: 1100px) {

}

@media screen and (min-width: 1101px) {
	html { font-size:16px; }	
}