@charset "utf-8";

/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
*{ margin:0; padding:0; box-sizing:border-box; }
select option{ padding:0 5px; }
body{ font-size:16px; font-family: 'Noto Serif JP', sans-serif; line-height:1.9; text-align:center; min-width:1200px; _display: inline;_zoom:1; }
h1 , h2 , h3 , h4 , h5 , h6 , address{ font-style:normal; font-weight:normal; font-size:100%; }
ul{ list-style-type:none; }
img{ border:0; vertical-align:bottom; }

table{ border-spacing:0; border:0; }
table th{ text-align:left; vertical-align:middle; font-weight:normal; }
table td{ word-break:break-all; }

.floatR{float:right;}
.floatL{ float:left; }

.alignL{ text-align:left; }
.alignR{ text-align:right; }
.alignC{ text-align:center; }

.rel{ position:relative; }
.abs{ position:absolute; }


/* clearfix **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.cf:after{ content:" "; display:block; clear:both; }


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


/* font decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* size */
.fontSS{ font-size:12px; }
.fontS{ font-size:14px; }
.fontM{ font-size:16px; }
.fontL{ font-size:20px; }
.fontLL{ font-size:24px; }
.fontLLL{ font-size:28px; }

/* color */
.txt-red{ color:#d2032b; font-weight:bold; }
.txt-blue{ color:#53bfca; font-weight:bold; }
.txt-yellow{ color:#f0d407; font-weight:bold; }
.txt-orange{ color:#e4b600; font-weight:bold; }
.txt-green{ color:#0ea89c; font-weight:bold; }
.txt-white{ color:#fff; }

/*indent */
.idt , ul.assist li , .system li{ padding-left:1.0em; text-indent:-1.0em; }
.idt-half{ padding-left:0.5em; text-indent:-0.5em; }

/*other */
.str{ font-weight:bold; }
.str-reset{ font-weight:normal; }

.underline{ text-decoration:underline; }
.underline-double{ border-bottom:double medium; }

.waveline{ background:url(../images/wave_line.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-red{ background:url(../images/wave_line_red.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-blue{ background:url(../images/wave_line_blue.png) repeat-x left bottom; padding-bottom:7px; }

.marker{background-color:#fff600; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* padding */
.spt0{ padding-top:0px !important; }
.spt5{ padding-top:5px !important; }
.spt10{ padding-top:10px !important; }
.spt15{ padding-top:15px !important; }
.spt20{ padding-top:20px !important; }
.spt25{ padding-top:25px !important; }
.spt30{ padding-top:30px !important; }
.spt35{ padding-top:35px !important; }

.spb0{ padding-bottom:0px !important; }
.spb5{ padding-bottom:5px !important; }
.spb10{ padding-bottom:10px !important; }
.spb15{ padding-bottom:15px !important; }
.spb20{ padding-bottom:20px !important; }
.spb25{ padding-bottom:25px !important; }
.spb30{ padding-bottom:30px !important; }
.spb35{ padding-bottom:35px !important; }

/* margin */
.smt0{ margin-top:0px !important; }
.smt5{ margin-top:5px !important; }
.smt10{ margin-top:10px !important; }
.smt15{ margin-top:15px !important; }
.smt20{ margin-top:20px !important; }
.smt25{ margin-top:25px !important; }
.smt30{ margin-top:30px !important; }
.smt35{ margin-top:35px !important; }
.smt40{ margin-top:40px !important; }
.smt45{ margin-top:45px !important; }
.smt50{ margin-top:50px !important; }
.smt-20{ margin-top:-20px !important; }
.smt-50{ margin-top:-50px !important; }

.smb0{ margin-bottom:0px !important; }
.smb5{ margin-bottom:5px !important; }
.smb10{ margin-bottom:10px !important; }
.smb15{ margin-bottom:15px !important; }
.smb20{ margin-bottom:20px !important; }
.smb25{ margin-bottom:25px !important; }
.smb30{ margin-bottom:30px !important; }
.smb35{ margin-bottom:35px !important; }
.smb40{ margin-bottom:40px !important; }
.smb45{ margin-bottom:45px !important; }
.smb50{ margin-bottom:50px !important; }
.smb-30{ margin-bottom:-30px !important; }

.sml0{ margin-left:0px !important; }
.sml20{ margin-left:20px !important; }
.sml30{ margin-left:30px !important; }
.sml50{ margin-left:50px !important; }

.smr0{ margin-right:0px !important; }
.smr20{ margin-right:20px !important; }
.smr30{ margin-right:30px !important; }
.smr50{ margin-right:50px !important; }

/* paragraph */
p{padding:10px 0;margin: 0;}
p.lh-reset{ line-height:1.0; }

/* original frame */
.box{ margin:0 50px; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
ul.assist{ font-size:12px; padding:15px 25px 12px; line-height:1.6; border:solid 1px #cdcdcd; }


/* responsive  **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.pc-item{ display:block; }
.sp-item{ display:none; }

[class^="pic"]{ float:right; margin:0 50px 20px 20px; }
.inner [class^="pic"]{ float:right; margin:0 0 20px 20px; }

.inner{ padding:20px; background-color:#fff; }
.inner p{ margin:0 0 30px; }
.inner p:last-child{ margin:0; }


body { font-family:'Kosugi Maru', sans-serif;}


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{width:1092px;margin:0 auto;text-align:left;position:relative;padding: 0;}
.lead_wrap {
    width: 1030px;
    margin: 0 auto;
}
.top .wrap{ width:1130px; margin:0 auto; text-align:left; position:relative; padding:50px 0 20px; }

.entry img{ box-shadow:0 1px 8px rgba(0,0,0,0.2); }

/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.top
 {background: #fcfcf4 url(../../images/modernism/top_bg.jpg) center top no-repeat;}
.top h1{padding: 0px 0 0px;}


/* btn **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.btn{background: #980152;display: inline-block;padding:15px;text-decoration:none;color:#fff;}
.btn:hover{background: #000000;display: inline-block;padding:15px;text-decoration:none;}
.btn a{color: #333;}


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
h2{padding-bottom:15px;}
.contents{background: #e7e7e4;padding-bottom:1px;}

ruby[data-ruby]
{position: relative;}
ruby[data-ruby]::before
{
	content: attr(data-ruby);
	position: absolute;
	line-height: 90%;
	text-align: center;
	left: -3em;
	right: -3em;
	transform-origin: bottom center;
	/* ルビの文字サイズを親文字に対する比率で指定 */
	transform: scale(0.6);
	/* 100%を越える部分が親文字とルビとのスペースになる。単位は親文字に対する比率 */
	bottom: 92%;
}
ruby[data-ruby] rt
{display: none;}

/* section1 */
.section1{ padding:0px 0 10px;}
.section1 .kakomi{ background:#fff; padding:50px 60px 40px; margin: 25px 0;}
.section1 .kakomi h3{margin:0 0 30px;}
.section1 .kakomi .tit{display:inline-block;margin:0 10px 10px 40px;vertical-align:middle;font-size:14px;line-height: 150%;color: #00a73b;}
.section1 .kakomi .tit img{margin: 5px 0 10px;}
.section1 .kakomi .txt2{ display:inline-block; vertical-align:middle; width:470px; padding-bottom:60px; }


/* section2 */
.section2{ margin:20px 0; }
.section2 h2{font-size:15pt; font-weight:600;}
.section2 { background:#ede7c2; padding:30px; }
.section2 .kakomi .tit{ display:inline-block; vertical-align:middle; margin:0 30px 10px 30px; font-size:14px; line-height: 150%; }
.section2 .kakomi .tit img{margin: 5px 0 10px;}
.section2 .kakomi .txt2{ display:inline-block; vertical-align:middle; width:540px; }

/* section3 */
.section3{ padding:0 0 30px; }


input[type=checkbox]:checked ~ div.changed {
    display:none;
}
input[type=checkbox]:checked ~ div.changed2 {
    display:block;
}

/* ★★★ タブレット ★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 768px){
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:100%; font-size:15px; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* paragraph */
p{ margin:0 10px 30px; }

/* original frame */
.box{ margin:0; }

/* responsive **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.pc-item{ display:none; }
.sp-item{ display:block; }

[class^="pic"],.inner [class^="pic"]{ float:none; margin:0 auto 20px; }

.inner{ padding:20px; text-align:center; }
.inner p{ text-align:left; }

.w100 img{ width:100%; height:auto; }
.w90 img{ width:90%; height:auto; }
.w80 img{ width:80%; height:auto; }
.mw80 img{ max-width:80%; height:auto; }
.mw90 img{ max-width:90%; height:auto; }
.mw60 img{ max-width:60%; height:auto; }
.mw100 img{ max-width:100%; height:auto; }
p img{ max-width:520px; width:100%; height:auto; }


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/

.wrap{padding: 0;}
.wrap, .lead_wrap{width:calc(100% - 20px);-webkit-width:calc(100% - 20px);margin:0 10px;}
/*↑width:calc(ウィンドウ幅 - 左右に空けたい余白の合計値);*/

	
/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.top h1 img{ width:100%; }
.top{ background:none; height:auto; }
.top h1{padding: 0px 0 0px;}

/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/

/* section1 */
.section1{ padding:30px 0 0;}
.section1 .spbr_none{ display: none;}
.section1 .kakomi{ background:#fff; padding:20px; margin: 25px 0 0; }
.section1 .kakomi h3 img{ margin-top:0; }
.section1 .kakomi .tit { text-align:center; margin: 20px auto 0px; width:100%;}
.section1 .kakomi .tit img{ width:90%; padding:0 10px 10px; }
.section1 .kakomi .txt{ width:100%;  text-align:center; }
.section1 .kakomi .txt2{ width:100%;  text-align:center; padding-bottom:0px; }
.section1 .kakomi:nth-of-type(3){margin-bottom:20px;}

/* section2 */
.section2 p{margin-bottom: 0; padding-top: 10px;}
.section2 .kakomi h3 img{ margin-top:0; }
.section2 .kakomi .tit { text-align:center; margin: 0 auto 10px; width:100%;}
.section2 .kakomi .tit img{ width:90%; padding:0 10px 5px; }
.section2 .kakomi .txt{ width:100%;  text-align:center; }
.section2 .kakomi .txt2{ width:100%;  text-align:center; }
.section2 .kakomi:nth-of-type(3){margin-bottom:20px;}

/* section3 */
.section3{ padding:0 0 5px; }

/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer .wrap{width:auto; text-align:center;}
.footer .wrap .txt{float:none; margin-bottom:10px;}
.footer .wrap .url{margin: 5px auto 0;}
.footer .wrap .logo{float:none;} 


}


@media only screen and (max-width: 540px){
/* top ********** スマホサイズまで待つと小さくなり過ぎるので 540px から2分割にしている
///////////////////////////////////////////////////////////////////////////////////////////////*/
}


/* ★★★ スマホ ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 414px){ /* iPhone6Plus */
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:320px; }
/*↑最小幅指定*/


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/


}

