﻿*{margin:0;padding:0}
div,h1,h2,h3,p,ul,li,input,textarea,table,tr,th,td,footer,header,nav,section{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
a{text-decoration:none;outline:none}
a img{border-style:none}
ul,li{list-style-type:none}

html {
font-size:62.5%;
}
body {
background:#fffff3; /* 背景 */
color:#ab9b82; /* 文字色 */
font-family:Verdana,Roboto,'メイリオ',Meiryo,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-size:1.2em;
letter-spacing:2px;
text-align:center;
overflow-wrap:break-word;
word-wrap:break-word;
}
#menu,h1,h2 {
font-family:'Sniglet',cursive,Georgia,Verdana,Roboto,'メイリオ',Meiryo,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
a {
color:#fe717a
}
/*--------------------------------------------------------
基本
--------------------------------------------------------*/
#wrapper{
margin:0 auto;
padding:20px 0;
text-align:left;
min-height:100%;height:auto;
width:1010px;/* #contents-wrapのwidth+100 */
}
header{
background:url(image/back03.png) no-repeat 100% 0;
padding:10px 0;
min-height:70px;
text-align:right
}
#column{
position:relative;
}
#contents{
background:#fff;
margin:0 auto;
height:1944px /* 108の倍数にすると丁度 */
}
#contents,.u01,.s01{
width:756px /* 108の倍数にすると丁度 */
}
#contents50{
background:#fff;
margin:0 auto;
height:5400px /* 108の倍数にすると丁度 コルダトップページ用 */
}
#contents50,.u01,.s01{
width:756px /* 108の倍数にすると丁度 コルダトップページ用 */
}
#contents-wrap{
position:relative;
top:0;left:100px;
width:910px;/* #contentsのwidth+154 */
}
#rightcolumn{
line-height:150%;
margin:0 0 0 200px;
padding:10px 20px;
height:100%;
overflow:auto;
-webkit-overflow-scrolling:touch
}
#rightcolumn a:hover{
text-decoration:underline;
}
#leftcolumn{ 
position:absolute;
background:url(image/back01.gif) no-repeat;
text-align:center;
top:100px;
width:375px;height:375px;
}
#leftcolumn-inner{
margin:60px auto 20px;
padding:0;
height:350px;width:350px;
overflow:auto;
-webkit-overflow-scrolling:touch
}
footer{
padding:30px 0 0;
text-align:center
}
footer a {
color:#ab9b82
}
/*--------------------------------------------------------
index
--------------------------------------------------------*/
#index-wrapper {
padding:20px 0;
margin:0 auto;
width:586px /* #indexcontentsのwidth+154 */
}
#indexcontents {
background:#fff;
text-align:center;
margin:0 auto;
padding:10px
}
#indexcontents,.u02,.s02 {
width:432px /* 108の倍数にすると丁度 */
}
/*--------------------------------------------------------
メニュー
--------------------------------------------------------*/
#menu{
display:block;
margin:5px 0;
text-align:center
}
nav li a,
nav .toggle{
color:#ab9b82;/* メニューの文字色 */
display:block;
font-weight:700;
font-size:1.3em;
letter-spacing:2px;
padding:2px 0;/* 一列の高さはここで調節 */
position:relative
}
nav li a:hover,
nav .toggle:hover{
color:#fe717a;
transition:.6s
}
nav .toggle:after{
border-top:solid 1px #ab9b82; /* メニュー「>」の色 */
border-right:solid 1px #ab9b82; /* メニュー「>」の色 */
content:"";
display:block;
margin-top:-5px;
position:absolute;
top:50%;right:10px;
height:5px;width:5px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
transition:.2s ease-in-out
}
nav .toggle.open:after {
-ms-transform:rotate(135deg);
-webkit-transform:rotate(135deg);
transform:rotate(135deg)
}
nav li ul{
display:none;
overflow:hidden
}
nav li ul li a:after{
display:none
}
#open{display:none}
/*--------------------------------------------------------
見出し、枠、線
--------------------------------------------------------*/
h1 {
font-size:2.2em;
letter-spacing:3px;
}
h2 {
background:url(image/back02.gif);
border-radius:5px;
font-size:1.2em;
margin:20px 0
}
h3 {
background:url(image/i01.gif) no-repeat;
font-size:1.2em;
border-bottom:1px dashed #ab9b82;
font-weight:400;
line-height:18px;
margin:20px 0;
padding:0 17px;
}
.marker {
background:#fedcc4;
padding:1px 5px
}
.ln01 {
border-left:5px solid #b7c32d;
margin:5px 0;
padding:3px
}
.ln02 {
border-left:5px solid #fe717a;
margin:5px 0;
padding:3px
}
.navi {
border:1px #ab9b82 solid;
margin:10px 0;
padding:3px;
text-align:center
}
.title {
font-size:1.5em;
font-weight:700;
margin:2em 0;
text-align:right
}
.title:first-letter {
color:#fe717a;
font-size:1.6em;
}
.txt {
border-left:1px dotted #999;
color:#999;
margin:1em;
padding:0 0 0 1em
}
dt {
background:#ffd446;
border-radius:5px;
color:#fff;
font-weight:700;
float:left;
margin:0 0 5px;padding:0 5px;
width:10em
}
dd {
border-bottom:dotted 1px #999;
margin:0 0 5px 12em
}
dl:after{
content:"";
clear:both;
height:0;
display:block;
visibility:hidden
}
em {
background:#ffc835; /* Ie9 */
background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.79, #fff), color-stop(0.8, #ffc835), color-stop(1, #ffc835));
background:-webkit-linear-gradient(transparent 80%, #ffc835 0%);
background:linear-gradient(transparent 80%, #ffc835 0%);
font-weight:700;
}
input,textarea {
background:#fedcc4;
border:1px solid #ab9b82;
color:#ab9b82;
font-family:Verdana,Roboto,'メイリオ',Meiryo,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-size:1em;
margin:3px 0;
width:300px
}
textarea {
height:50px
}
.frame {
border:6px solid #fff;
border-radius:3px;
box-shadow:4px 4px 4px #ccc;
-webkit-box-shadow:4px 4px 4px #ccc;
}
hr {
display:block;
border:0;  
border-top:1px solid #ccc;
margin:1em 0;
padding:0;
height:1px
}
.cf:before,.cf:after{content:" ";display:table}
.cf:after{clear:both}

/*--------------------------------------------------------
ページ上部へのリンク
--------------------------------------------------------*/
#pagetop-pc,#pagetop-sm{
display:block;
padding-top:5px;
width:50px;height:50px;
text-align:center;
position:fixed;
bottom:20px;right:20px
}
#pagetop-pc:before,#pagetop-pc:after,#pagetop-sm:before,#pagetop-sm:after{
position:absolute;
content:"";
width:28px;height:40px;
background:#fe8d92
}
#pagetop-pc:before,#pagetop-sm:before{
left:6px;
-ms-transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
transform:rotate(-45deg);
border-radius:50px 50px 0 0
}
#pagetop-pc:after,#pagetop-sm:after{
left:16px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
border-radius:50px 50px 0 0
}
.arrow {
border-left:3px solid #fff;
border-top:3px solid #fff;
position:absolute;
top:40%;left:38%;
height:12px;width:12px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
box-sizing:border-box;
z-index:2
}
#pagetop-sm{display:none}
/*--------------------------------------------------------
枠
--------------------------------------------------------*/
.k01{background:url(image/f-kado1.gif) no-repeat;height:76px;width:77px;float:left}
.k02{background:url(image/f-kado2.gif) no-repeat;height:76px;width:77px;float:left}
.k03{background:url(image/f-kado3.gif) no-repeat;height:76px;width:77px;float:left}
.k04{background:url(image/f-kado4.gif) no-repeat;height:76px;width:77px;float:left}
.r01{background:url(image/f-migi.gif) repeat-y 100% 0;width:100%}
.l01{background:url(image/f-hidari.gif) repeat-y;width:100%}
.u01{background:url(image/f-ue.gif) repeat-x;height:76px;float:left}
.s01{background:url(image/f-sita.gif) repeat-x;height:76px;float:left}
.u02{background:url(image/f-ue.gif) repeat-x;height:76px;float:left}
.s02{background:url(image/f-sita.gif) repeat-x;height:76px;float:left}
/*--------------------------------------------------------
スマホ、タブレット用
横幅768pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 768px) {
body {
background:#fffff3 url(image/back01.gif) 50% 50% no-repeat fixed;
font-size:1.3em
}
#wrapper,#index-wrapper{
padding:20px;
min-height:inherit;
width:auto
}
header{
background-position:0 100%;
padding-right:60px;
text-align:left
}
#contents,#indexcontents{
background-color:rgba(255,255,243,0.4);
}
#contents,#indexcontents{
width:auto;height:auto
}
#contents-wrap{
left:0;
width:auto
}
#rightcolumn{
margin:0;padding:10px 0;
height:auto
}
#leftcolumn{ 
background:none;
position:static;
margin:20px 0;padding:10px;
width:auto;height:auto
}
#leftcolumn-inner{
overflow:visible;
margin:0 auto;
width:auto;height:auto
}
#contents a {
background:#febab8;
border-radius:5px;
color:#fffff3;
display:inline-block;
margin:5px 5px 5px 0;
padding:3px
}
#contents a.bg-none{
background:none;
border-radius:0;
margin:5px 5px 5px 0;
padding:0
}
#contents a img{
vertical-align:bottom
}
#fl{
background:#fedcc4;
border-radius:5px;
padding:10px
}

.k01,.k02,.k03,.k04,.r01,.l01,.u01,.u02,.s01,.s02{
background:none;height:auto;width:auto;float:none;}
input,textarea {width:90%}
dt{float:none}
dd{margin-left:20px}
#pagetop-pc{display:none;}
#pagetop-sm{display:block;}
/*--------------------------------------------------------
スマホ、タブレット用メニュー
--------------------------------------------------------*/
/* メニューを開くボタン */
#open {
background:rgba(254,113,122,0.8);
border:3px solid #fff;
border-radius:20px;
box-shadow:0 1px 5px #ab9b82;
display:inline-block;
margin:0 5px;
position:absolute;
height:40px;width:40px;/* 大きさ */
top:-40px;right:0/* 位置 */
}
#open-icon,#open-icon:before,#open-icon:after {
background:#fff; /* 線の色 */
}
#open-icon{display:block;margin:-1px 0 0 -10px;position:absolute;top:50%;left:50%;height:2px;width:20px}
#open-icon:before,#open-icon:after{content:"";display:block;position:absolute;top:50%;left:0;height:2px;width:20px;transition:.3s}
#open-icon:before{margin-top:-8px}
#open-icon:after{margin-top:6px}
#open .close{background:transparent}
#open .close:before,#open .close:after{margin-top:0}
#open .close:before{-ms-transform:rotate(-45deg);-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}
#open .close:after{-ms-transform:rotate(-135deg);-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}

/* メニュー */
#menu {
background-color:rgba(254,220,196,0.9);
border-radius:10px;
display:none;
padding:10px;
position:absolute;
top:0;left:0;
width:100%;
z-index:30
}
nav li a,nav .toggle {
padding:20px 0; /* メニュー高さはここで調整 */
text-indent:1em
}
nav li ul li {
background:none;
display:inherit;
float:left;
visibility:visible;
height:auto;width:50% /* サブメニュー一列にするなら100% */
}
}
@media screen and (max-width: 400px) {
body {background-size:contain}
}