@charset "utf-8";
/*-------------------
   clearfix
-------------------*/
.cf:before, .cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
 *zoom: 1;
}
/*-------------------
   common
-------------------*/
.wrapper {
	font: 1.0em/1.2 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-feature-settings: "palt";
	letter-spacing: .1em;
	padding: 0 0 20px;
	position: relative;
}
.wrapper * {
	box-sizing: border-box;
}
.wrapper a {
	color: inherit;
	display: block;
}
.wrapper img {
	height: auto;
	max-width: 100%;
}
#container .flex {
    align-items: flex-start;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	margin: 0 auto;
}
/*ブレイクポイントのルール*/
/* -スマホ基本設計 解像度に依存しない-
 *350pxまで：SP縦 i5 SE
 *350px〜480px：SP縦 i6-8　****一番重要****
 *480px〜960px：SP横からタブレット
 *960px〜小型PC　大型PC
 
/*  全体指定 スマホ縦 i5 i5SE　350pxまで  */

/*-- 画面外にいる状態 --*/
.fadein {
	opacity : 0;
	transform : translate(0, 30px);
	transition: ease-in 400ms;
}
/*-- 画面内に入った状態 --*/
.fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
}
#container section {
	margin: 0 auto;
	padding: 0 0;
}
/*----------
 mainvisual
----------*/
#container .head-title {
    font: bold 1.1rem/1.2 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    letter-spacing: -0.05rem;
    margin: 15px 5px;
    letter-spacing: 0;
    text-align: center;
}
#container .mainvisual .mainimg {
    border: 10px solid #fff;
    margin: 5px auto;
    box-shadow: 2px 2px 5px #ccc;
}
#container .mainvisual .daybox li {
    color: #000;
    font: 1.1rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    letter-spacing: -0.01rem;
    margin: 0 0;
    padding: 0 0;
}
#container .mainvisual .daybox .minibox {
    border: solid 1px #de2e86;
    color: #de2e86;
    display: block;
    font: 1.0rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    margin: 10px auto 5px;
    padding: 2px 0;
    width: 50%;
}
#container .des {
    color: #666;
    font: 0.9rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin-bottom: 10px;
    text-align: justify;
    text-justify: inter-ideograph;
}
#container .mainvisual .textbox {
    margin: 20px 0 30px;
    padding: 0 20px;
}
#container h2 {
    background-color: #fffbd5;
    color: #000;
    font: 1.2rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    margin-bottom: 20px;
    padding: 5px 10px;
}
#container h3 {
    border-bottom: solid 2px #947f28;
    color: #000;
    font: 1.1rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin: 0 0 20px;
    padding: 0 0;
}
#container .cont {
    margin-bottom: 30px;
    padding: 0 20px;
}
#container .color1 {
    color: #947f28;
}
#container .color2 {
    color: #de2e86;
    font-size: 0.9rem;
}
#container h4 {
    border-left: solid 7px #b7a246;
    color: #947f28;
    font: 1.2rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin-bottom: 10px;
    padding: 2px 7px;
}
#container .come {
    color: #666;
    font: 0.9rem/1.5 "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
dl {
    margin: 10px 0;
}
dd {
    margin-bottom: 10px;
}
.box {
    margin-bottom: 20px;
}
.sec1 .top dd {
    margin: 0 0 30px;
    padding: 0 20px;
}
#container .sec1 .cont_2 li,
#container .sec1 .cont_3 li,
#container .sec2 li,
#container .sec3 li,
#container .sec4 li {
    margin-bottom: 10px;
}
@media screen and (min-width:350px) and ( max-width:480px) {
/*　スマホ縦　i6 / i6plus / i7  350pxから480pxまではここを読み込む　*/
#container .mainvisual .des {
    padding: 10px 15px;
}
#container h2 {
    padding: 5px 40px;
}
#container .des {
    font-size: 1.0rem;
}
#container .come {
    letter-spacing: -0.01rem;
}
}
 @media screen and (min-width:480px) and ( max-width:960px) {
/*　スマホ横～タブレット 480pxから960pxまではここを読み込む　*/
#container .mainvisual .textbox {
    padding: 0 40px;
}
#container .mainvisual .des {
    margin: 20px 0 10px;
}
#container .head-title {
    font-size: 1.5rem;
}
#container .head-title .br2 {
    display: none;
}
#container .cont,
#container .top {
    margin-bottom: 60px;
    padding: 0 40px;
}
#container .des {
    font-size: 1.0rem;
}
#container h2 {
    font-size: 1.3rem;
    padding: 10px;
}
#container h2 br {
    display: none;
}
#container h3 {
    font-size: 1.4rem;
    padding: 10px 0;
}
.box dl,.top dl {
    display: flex;
}
.box dd {
    margin: 0 20px;
    width: calc(100%/2);
}
.sec1 .top dd {
    margin: 0 20px;
    padding: 0 0;
    width: calc(100%/2);
}
.daybox {
    margin: 30px 0 0;
    padding: 0 40px;
}
#container .mainvisual .daybox ul {
    overflow: hidden;
}
#container .mainvisual .daybox li {
    font-size: 1.2rem;
    float: left;
    margin: 10px 30px 10px 0;
    padding: 0 0;  
}
#container .mainvisual .daybox .minibox {
    display: inline-block;
    margin: 0 10px 0 0;
    padding: 10px 0;
    width: 10%;
}
.sec1 .cont_2 ul,
.sec1 .cont_3 ul,
.sec2 .cont ul,
.sec4 .cont ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.cont li {
    display: inline-block;
    margin: 0 5px;
    width: calc(95%/2);
}
}
 @media screen and (min-width:960px) {
/*　小・大画面デスクトップ　960pxからはここを読み込む　*/
#container {
    margin: 0 auto;
    width: 1040px;
}
#container .mainvisual .textbox {
    padding: 0 100px;
}
#container .mainvisual .mainimg {
    margin: 5px 40px;
}
#container .mainvisual .des {
    margin: 20px 0 10px;
}
#container .head-title {
    font-size: 1.5rem;
    margin: 50px 0;
}
#container .head-title .br2 {
    display: none;
}
#container .cont,
#container .top {
    margin-bottom: 60px;
    padding: 0 100px;
}
#container .des {
    font-size: 1.0rem;
}
#container h2 {
    font-size: 1.3rem;
    padding: 10px;
}
#container h2 br {
    display: none;
}
#container h3 {
    font-size: 1.4rem;
    padding: 10px 0;
}
.box dl,.top dl {
    display: flex;
}
.box dd {
    margin: 0 20px;
    width: calc(100%/2);
}
.sec1 .top dd {
    margin: 0 20px;
    padding: 0 0;
    width: calc(100%/2);
}
.daybox {
    margin: 30px 0 0;
    padding: 0 100px;
}
#container .mainvisual .daybox ul {
    overflow: hidden;
}
#container .mainvisual .daybox li {
    font-size: 1.2rem;
    float: left;
    margin: 10px 30px 10px 0;
    padding: 0 0;  
}
#container .mainvisual .daybox .minibox {
    display: inline-block;
    margin: 0 10px 0 0;
    padding: 10px 0;
    width: 10%;
}
.sec1 .cont_3 ul,
.sec4 .cont ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.cont li {
    display: inline-block;
    margin: 0 5px;
    width: calc(96%/2);
}
.sec1 .cont_3 ul,
.sec4 .cont ul {
    justify-content: left;
}
.sec1 .cont_3 li,
.sec4 .cont li {
    width: calc(96%/3);
}
}