@charset "utf-8";

@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}
@keyframes delayAnimeA{0%{opacity:0;transform:translateY(50px);}100%{opacity:1;transform:translateY(0);}}
@keyframes delayAnimeB{0%{opacity:0;transform:translateX(-100px);}100%{opacity:1;transform:translateX(0);}}

/* =Reset default browser CSS.
Based on work by Eric Meyer:http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline;}
:focus{outline:0;}
ol,ul{list-style:none;}
table{border-collapse:separate;border-spacing:0;}
caption,th,td{font-weight:normal;text-align:left;}
blockquote:before,blockquote:after,q:before,q:after{content:"";}
blockquote,q{quotes:"";}
img{max-width:100%;height:auto;vertical-align:bottom;}
a img{max-width:100%;height:auto;border:0;}
a:hover img{animation:fadeIn 1s ease 0s 1 normal;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
body{font:1rem/1.5 "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "verdana", sans-serif;color:#373737;animation:fadeIn 2s ease 0s 1 normal; line-height:200%;}

/* リンク設定
------------------------------------------------------------*/
a{text-decoration:none;outline:0;vertical-align:baseline;color:#373737;}
a:hover,a:active{color:#373737;}

/**** Clearfix ****/
.inner:after{content:""; display:table;clear:both;}
.inner{zoom:1;}
.clearfix:before,.clearfix:after{content:" ";display:table;}
.clearfix:after{clear:both;}
.clearfix{*zoom:1;}

/* 汎用クラス
*****************************************************/
.pcDisp{display:block;}
.spDisp{display:none;}
.cent{text-align:center;}
.alR{text-align:right;}
.block{display:block;}
.fontL{font-size:1.5rem;}
.pcBlock{display:block;}
.delayAnime{animation-fill-mode:both;animation-duration:2s;animation-name:delayAnimeA;visibility:visible !important;}
div.drawer{display:none;}

/* ヘッダー
------------------------------------------------------------*/
header{background:#fff; border-bottom:6px solid#fdf8e4; width:100%; text-align:center;}
header img.img01{ max-width:285px; width:30%; margin:25px auto 20px;}
header img.img02{ max-width:158px; width:16.5%; margin:25px auto 20px;}
header img.img03{ max-width:270px; width:27%; margin:25px auto 20px;}

/* メイン画像
*****************************************************/
#kv{background:url(images/bg01.jpg); background-size:15%;}

/* コンテンツ
*****************************************************/
#top{background:url(images/bg02.jpg); background-size:15%; padding-top:10px; padding-bottom:35px;}
#top .top01{ max-width:1281px; margin:0 auto;}
#top .top02{ max-width:1281px; margin:0 auto;}

#cts01{background:url(images/bg03.jpg); background-size:5%; position:relative; padding-bottom:85px;}
#cts01 h2{ max-width:513px; position:absolute; right:0; left:0; margin:auto; top:-70px;}
#cts01 .cts01_top{ text-align:center; width:100%; padding-top:90px;}
#cts01 .cts01_ul01{ max-width:1160px; margin:75px auto 40px; display:flex;}
#cts01 .cts01_ul01 li{ margin-left:10px; margin-right:10px;}
#cts01 .cts01_p01{max-width:965px; margin:0 auto 25px;}
#cts01 .cts01_p01 span{ background:#fffbc5; font-weight:bold;}
#cts01 .cts01_p02{ width:100%; text-align:center; margin-bottom:25px;}
#cts01 h3{max-width:700px; margin:0 auto;}
#cts01 .cts01_img03{max-width:1158px; margin:0 auto 15px;}
#cts01 .cts01_p03{max-width:970px; margin:0 auto 15px;}
#cts01 .cts01_ul02{max-width:1133px; margin:0 auto; display:flex;}
#cts01 .cts01_ul02 li{ margin-left:10px; margin-right:10px;}
#cts01 .cts01_ul02 li:last-child{ margin-top:120px;}
#cts01 .cts01_img06{max-width:1147px; margin:0 auto 35px;} 

#cts02{background:url(images/bg04.jpg); background-size:3%; position:relative; padding-bottom:90px;}
#cts02 h2{ max-width:513px; position:absolute; right:0; left:0; margin:auto; top:-70px;}
#cts02 .cts02_top{ max-width:1000px; padding-top:90px; margin:0 auto 60px;}
#cts02 h3{max-width:700px; margin:0 auto 23px;}
#cts02 .cts02_img01{ max-width:1114px; margin:0 auto 30px;}
#cts02 .cts02_p01{ max-width:990px; margin:0 auto 40px;}
#cts02 .cts02_p01 span{background:#fffbc5; font-weight:bold;}
#cts02 .cts02_img02{ max-width:1012px; margin:0 auto 40px;}
#cts02 .cts02_p02{ width:100%; text-align:center; margin-bottom:45px;}
#cts02 .cts02_img03{ max-width:1114px; margin:0 auto 35px;}
#cts02 .cts02_p03{ max-width:990px; margin:0 auto 40px;}
#cts02 .cts02_p03 span{ font-weight:bold;}
#cts02 .cts02_p03 span.s01{background:#fffbc5;}
#cts02 .cts02_img04{ max-width:1025px; margin:0 auto 23px;}
#cts02 .cts02_p04{ max-width:1097px; margin:0 auto; text-align:right;}
#cts02 .cts02_ul01{max-width:1133px; margin:0 auto; display:flex;}
#cts02 .cts02_ul01 li{ margin-left:10px; margin-right:10px;}
#cts02 .cts02_ul01 li:last-child{ margin-top:120px;}
#cts02 .cts02_img05{ max-width:1147px; margin:0 auto;}

#cts03{background:url(images/bg02.jpg); background-size:15%; position:relative; padding-bottom:52px;}
#cts03 h2{ max-width:513px; position:absolute; right:0; left:0; margin:auto; top:-70px;}
#cts03 .cts03_top{ max-width:900px; padding-top:90px; margin:0 auto 25px;}
#cts03 .cts03_top span.s01{ background: linear-gradient(transparent 60%, #fbc7b9 60%);}
#cts03 .cts03_top span.s02{ background: url(images/nami.png) repeat-x bottom; padding-bottom:15px; background-size:25px auto;}
#cts03 .cts03_img01{ max-width:930px; margin:0 auto 40px;}


/* 共通エリア
*****************************************************/
.res{ max-width:665px; margin:0 auto;} 
.res li:first-child{ margin-bottom:25px;}


/* フッター
*****************************************************/
footer{ padding-top:30px; padding-bottom:20px; text-align:center;}

/* 調整
------------------------------------------------------------*/
@media only screen and (max-width:1199px){
main section{padding: 0 20px;}
}

/* タブレットサイズ
------------------------------------------------------------*/
@media only screen and (max-width:999px){
}

/* スマホサイズ
------------------------------------------------------------*/
@media only screen and (max-width:644px){
.pcDisp{display:none;}
.spDisp{display:block;}
.pcBlock{display:inline;}
div.drawer{display:block;}

header img.img01{ max-width:285px; margin:25px auto 20px;}
header img.img02{ max-width:158px; margin:25px auto 20px;}
header img.img03{ max-width:270px; margin:25px auto 20px;}

main,footer{ font-size:0.7rem; line-height:170%;}
.res{ max-width:90%; margin:0 auto;} 

#cts_link02{background:url(images/bg03.jpg); background-size:10%; height:50px;}
#cts_link03{background:url(images/bg02.jpg); background-size:15%; height:40px;}

#top{ padding-bottom:40px;}
#top .top02{ max-width:70%; margin:0 auto;}

#cts01{padding-bottom:20px; background-size:10%;}
#cts01 h2{ max-width:75%;top:-35px;}
#cts01 .cts01_top{padding-top:50px; text-align:left; width:80%; margin:0 auto;}
#cts01 .cts01_ul01{ max-width:1160px; margin:20px auto 20px; display:block;}
#cts01 .cts01_ul01 li{ margin-left:0; margin-right:0;}
#cts01 .cts01_ul01 li:first-child{ margin-bottom:20px;}
#cts01 .cts01_p01{max-width:965px; margin:0 auto 15px;}
#cts01 h3{max-width:90%;}
#cts01 .cts01_ul02{margin:0 auto 20px; display:block;}
#cts01 .cts01_ul02 li{ margin-left:0; margin-right:0;}
#cts01 .cts01_ul02 li:first-child{ width:80%;}
#cts01 .cts01_ul02 li:last-child{ width:80%; margin-left:20%; margin-top:20px;}
#cts01 .cts01_img06{margin:0 auto 20px;}

#cts02{background-size:5%; padding-bottom:20px;}
#cts02 h2{ max-width:75%; top:-35px;}
#cts02 .cts02_top{ max-width:100%; padding-top:50px; margin:0 auto 30px;}
#cts02 h3{max-width:90%; margin:0 auto 15px;}
#cts02 .cts02_img01{ margin:0 auto 20px;}
#cts02 .cts02_p01{ margin:0 auto 20px;}
#cts02 .cts02_img02{ margin:0 auto 20px;}
#cts02 .cts02_p02{ margin-bottom:20px;}
#cts02 .cts02_img03{  margin:0 auto 20px;}
#cts02 .cts02_p03{ margin:0 auto 20px;}
#cts02 .cts02_img04{ margin:0 auto 20px;}
#cts02 .cts02_ul01{margin:0 auto 20px; display:block;}
#cts02 .cts02_ul01 li{ margin-left:0; margin-right:0;}
#cts02 .cts02_ul01 li:first-child{ width:80%;}
#cts02 .cts02_ul01 li:last-child{ width:80%; margin-left:20%; margin-top:20px;}
#cts02 .cts02_img05{margin:0 auto 20px;}

#cts03{padding-bottom:45px; padding-top:-40px;}
#cts03 h2{ max-width:75%; top:-35px;}
#cts03 .cts03_top{ max-width:100%; padding-top:10px; margin:0 auto 20px;}
#cts03 .cts03_top span.s02{ padding-bottom:8px; background-size:15px auto;}
#cts03 .cts03_img01{ margin:0 auto 20px;}

footer{ padding-top:15px; padding-bottom:15px;}
}