@charset "Shift_JIS";

/* ‹¤’Ê
=========================================================================================== */
body {
  overflow-x: hidden;
}
.GridSet {
  /* width: 1020px;*/
  width: 100%;
  font-size: 18px;
}
.PageTop {
  margin: 30px 15px 0 0;
}
.Section {
  padding: 0;
}
.TextStyle1 {
  font-size: 18px;
  margin: 0 0 40px;
}
div[id$="section"] {
  padding: 0;
  margin: 120px auto 0;
  max-width: 1020px;
}
div.section-inner {
  max-width: 1020px;
  margin: 0 auto;
}
div[id$="section"] h2 {
  margin: 0 0 65px;
  padding: 0;
  background: none;
  text-align: center;
  letter-spacing: -0.03em;
  font-family: "Ÿà–¾’©", YuMincho, "HG–¾’©E", "ƒqƒ‰ƒMƒm–¾’© ProN W3", "Hiragino Mincho ProN", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
}
div[id$="section"] h2 span {
  background-color: transparent;
  font-size: 45px;
  color: #333;
  padding: 0 0 25px;
  box-sizing: border-box;
  border-bottom: 1px solid #53483E;
  font-weight: normal;
}
div[id$="section"] h3.title03 {
  position: relative;
  margin: 30px 0 0;
  padding-left: 25px;
  box-sizing: border-box;
  color: #333;
  line-height: 160%;
}
div[id$="section"] h3.title03:before {
  content: "";
  height: 16px;
  width: 16px;
  background: #736357;
  position: absolute;
  top: 0.25em;
  left: 0;
}
div[id$="section"] img {
  max-width: 100%;
}
.l-row {
  display: -webkit-flex;
  display: flex;
  margin-left: -20px;
  margin-bottom: 40px;
}
.l-row [class^="l-col"] {
  margin-left: 20px;
}
.l-col-1 { width: calc(100% / 12);}
.l-col-2 { width: calc(100% / 12 * 2);}
.l-col-3 { width: calc(100% / 12 * 3);}
.l-col-4 { width: calc(100% / 12 * 4);}
.l-col-5 { width: calc(100% / 12 * 5);}
.l-col-6 { width: calc(100% / 12 * 6);}
.l-col-7 { width: calc(100% / 12 * 7);}
.l-col-8 { width: calc(100% / 12 * 8);}
.l-col-9 { width: calc(100% / 12 * 9);}
.l-col-10 {	width: calc(100% / 12 * 10);}
.l-col-11 {	width: calc(100% / 12 * 11);}
.l-col-12 {	width: calc(100% / 12 * 12);}

img.img-shadow {
  -webkit-box-shadow: 7px 7px 0px #937e69;
  box-shadow: 7px 7px 0px #937e69;
  margin-right: 7px;
  margin-bottom: 7px;
  max-width: 100%;
}

.ColumnSet_img-shadow {
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}
.ColumnSet_img-shadow .item {
  padding: 0 25px 0 7px;
  box-sizing: border-box;
}
.ColumnSet_img-shadow .item span {
  display: block;
  padding-top: 5px;
  font-size: 16px;
}
.ColumnSet_img-shadow + p {
  margin-top: 30px;
}
.img-border {
  border: 1px solid #bfbfbf;
}
.br480 {
  display: none;
}
.bg_brown {
  background-color: #f4f0eb;
  padding: 45px 35px 5px;
}
span.caption {
  display: block;
  margin-top: 5px;
  font-size: 83%;
  text-align: center;
}

@media screen and (min-width: 1050px) and (max-width: 1304px) { /*max-width1020+30*/
  .OptionWideRWD #Contents {
    padding-right: 0;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .GridSet {
    width: 100%;
    font-size: 14px;
  }
  .TextStyle1 {
    font-size: 14px;
    margin: 0 0 20px;
  }
  div[id$="section"] {
    margin: 50px auto 0;
    max-width: initial;
  }
  div.section-inner {
    max-width: initial;
    margin: 0 auto;
  }
  div[id$="section"] h2 {
    margin: 0 0 35px;
  }
  div[id$="section"] h2 span {
    font-size: 36px;
    padding: 0 0 15px;
  }
  .l-row {
    margin-left: -15px;
  }
  .l-row [class^="l-col"] {
    margin-left: 15px;
  }
  .l-row.l-row-sp {
    display: block;
    margin-left: 0;
  }
  .l-row.l-row-sp [class^="l-col"] {
    width: 100%;
    margin-left: 0;
    margin-bottom: 20px;
  }
  .PageTop {
    margin: 30px 0 0 0;
  }
  .ColumnSet_img-shadow .item {
    padding: 0 12px 0 5px;
}
.ColumnSet_img-shadow .item span {
    font-size: 12px;
}
}
@media screen and (max-width: 480px) {
  div[id$="section"] h2 span {
    font-size: 32px; /*adjust*/
  }
  .br480 {
    display: block;
  }
}
@media screen and (max-width: 399px) {
  div[id$="section"] h2 span {
    font-size: 28px; /*adjust*/
  }
  .ColumnSet_img-shadow .item span {
    font-size: 11px;
}
}





/* title
=========================================================================================== */
#title-section {
  background-color: #fff;
  padding: 120px 0 0;
  margin: 0 auto;
  text-align: center
}
#title-section h1.title {
  padding: 16px 10px 10px;
  margin-bottom: 40px;
  background-color: #998675;
}
#title-section span {
  display: block;
  color: #fff;
  font-family: "Ÿà–¾’©", YuMincho, "HG–¾’©E", "ƒqƒ‰ƒMƒm–¾’© ProN W3", "Hiragino Mincho ProN", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
  line-height: 1.2;
}
#title-section span.name {
  font-size: 26px;
  padding-bottom: 0.15em;
}
#title-section span.project {
  font-size: 34px;
}
@media screen and (max-width: 767px) {
  #title-section {
    padding: 11.428571% 0 0;
  }
  #title-section span.name {
    font-size: 20px;
  }
  #title-section span.project {
    font-size: 27px;
  }
}


/* main-visual
=========================================================================================== */
.main-visual {
  position: relative;
  margin: 45px auto 40px;
  max-width: 1020px;
}
.main-visual img {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .main-visual {
    margin: 36px auto 32px;
  }
}
.mv_text {
	text-align: center;
	font-weight: bold;
	padding: 0 0 1em;
}

/* project-section
=========================================================================================== */
#project-section {
  background-color: #f4f0eb;
  padding: 45px 35px 50px;
  margin: 0 auto;
  box-sizing: border-box;
}
#project-section dl {
  border-top: 1px solid #ddd6ce;
  padding-top: 20px;
  margin-top: 15px;
}
#project-section dl:first-of-type {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}
#project-section dt {
  position: relative;
  font-weight: bold;
  width: 312px;
  float: left;
  padding-left: 25px;
  box-sizing: border-box;
  margin-bottom: 5px;
}
#project-section dt:before {
  background: #736357;
  content: "";
  height: 16px;
  width: 16px;
  left: 0;
  position: absolute;
  top: 0.25em;
}
#project-section dd {
  padding-left: 312px;
}
#project-section dl.schedule dt {
  float: none;
}
#project-section dl.schedule dd {
  text-align: center;
  padding-left: 0;
  max-width: 812px;
  margin: 0 auto;
}
#project-section .product_name {
  text-align: left;
  margin-top: 30px;
  color: #736357;
  font-weight: bold;
}
#project-section .production_time {
  position: relative;
  margin-top: 5px;
  margin-right: 5.5em;
}
@media screen and (max-width: 994px){
#project-section .production_time {
  margin-right: 4.5em;
}		
}
@media screen and (max-width: 767px){
#project-section .production_time {
  margin-right: 3em;
}	
}
#project-section .production_time:before {
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: #b7b7b7;
}
#project-section .production_time span {
  position: relative;
  padding: 0 1em;
  background: #f4f0eb;
}
#project-section .production_time p:before, #project-section .production_time p:after {
  position: absolute;
  top: calc(50% - 1px);
  transform: translate(0, -50%);
  content: "";
  display: inline-block;
  width: 13px;
  height: 16px;
  background-size: contain;
}
#project-section .production_time p:before {
  left: 0;
  background-image: url(/anniversary/image/case1/schedule_arrow_l.png);
}
#project-section .production_time p:after {
  right: 0px;
  background-image: url(/anniversary/image/case1/schedule_arrow_r.png);
}
.schedule ul {
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  margin-right: -5px;
  margin-left: -5px;
}
.schedule li {
  padding: 4px 0px 2px;
  margin: 10px 5px;
  text-align: center;
  color: #fff;
  
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  #project-section {
    padding: 15px;
  }
  #project-section dt {
    width: auto;
    float: none;
    padding-left: 20px;
  }
  #project-section dt:before {
    height: 12px;
    width: 12px;
  }
  #project-section dd {
    padding-left: 0px;
  }
}
@media screen and (max-width: 579px) {
  .schedule li {
    padding: 3px 0px 2px;
    margin: 10px 2px;
    font-size: 8px;
    line-height: 1.2;
    letter-spacing: -0.03em;
  }
  .schedule li span {
    margin-right: -2px;
    margin-left: -2px;
  }
}
@media screen and (max-width: 399px) {
#project-section .production_time span {/*adjust*/
    font-size: 12px;
}
}

/* qa-section
=========================================================================================== */
#qa-section {}
#qa-section .list-qa {
  background-color: #eee8e0;
  margin-top: 20px;
  padding: 0 25px;
}
#qa-section .list-qa dt {
  position: relative;
  padding: 25px 33px 25px 75px;
}
#qa-section .list-qa dd {
  position: relative;
  padding: 25px 0 25px 75px;
  border-top: 1px solid #fff;
}
#qa-section .list-qa span {
  font-family: Arial, Helvetica, "sans-serif";
  font-size: 30px;
  font-weight: bold;
  color: #c55a11;
  position: absolute;
  top: 20px;
  left: 0;
}
#qa-section ul.link-anchor {
 margin: 40px auto 0;
 display: -webkit-flex;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
#qa-section ul.link-anchor li {
 width: 49.5%;
 border-radius: 32px;
 box-sizing: border-box;
 background-color: #998675;
 background-image: url(/image/jp/r1/icon/icon_down_l_white_hd.gif);
 background-repeat: no-repeat;
 background-position: right 18px center;
 background-size: 18px;
 margin-top: 1%;
}
#qa-section ul.link-anchor li a {
 display: block;
 padding: 18px 38px 15px 18px;
 color: #fff;
 font-size: 20px;
 text-decoration: none;
 text-align: center;
}
#qa-section ul.link-anchor li:hover {
  opacity: 0.8;
}
@media screen and (max-width: 994px) {
  #qa-section ul.link-anchor li {
    border-radius: 28px;
    background-size: 16px;
  }
  #qa-section ul.link-anchor li a {
    padding: 15px 35px 12px 0;
    font-size: 16px;
  }
}
@media screen and (max-width: 890px) {}
@media screen and (max-width: 829px) {}
@media screen and (max-width: 767px) {
  #qa-section .list-qa dt {
    padding: 20px 25px 20px 40px;
  }
  #qa-section .list-qa dd {
    padding: 20px 0 20px 40px;
  }
  #qa-section .list-qa span {
    font-size: 24px;
  }
  #qa-section ul.link-anchor {
    margin: 30px auto 0;
    display: block;
  }
  #qa-section ul.link-anchor li {
    width: 100%;
    margin-top: 15px;
  }
  #qa-section ul.link-anchor li a {
    font-size: 14px;
    background-size: 14px;
  }
}
@media screen and (max-width: 480px) {}
@media screen and (max-width: 399px) {
  #qa-section ul.link-anchor li a {
    padding: 12px 22px 10px 0;
    font-size: 12px;
  }
}

/* btn-section
=========================================================================================== */
#btn-section {}
#btn-section ul.link-anchor {
 margin: -60px auto 0;
 display: -webkit-flex;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
#btn-section ul.link-anchor li {
 width: 49.5%;
 border-radius: 32px;
 box-sizing: border-box;
 background-color: #998675;
 background-image: url(/image/jp/r1/icon/icon_down_l_white_hd.gif);
 background-repeat: no-repeat;
 background-position: right 18px center;
 background-size: 18px;
 margin-top: 1%;
}
#btn-section ul.link-anchor li a {
 display: block;
 padding: 18px 38px 15px 18px;
 color: #fff;
 font-size: 20px;
 text-decoration: none;
 text-align: center;
}
#btn-section ul.link-anchor li:hover {
  opacity: 0.8;
}
@media screen and (max-width: 994px) {
  #btn-section ul.link-anchor li {
    border-radius: 28px;
    background-size: 16px;
  }
  #btn-section ul.link-anchor li a {
    padding: 15px 35px 12px 0;
    font-size: 16px;
  }
}
@media screen and (max-width: 890px) {}
@media screen and (max-width: 829px) {}
@media screen and (max-width: 767px) {
  #btn-section ul.link-anchor {
    margin: -20px auto 0;
    display: block;
  }
  #btn-section ul.link-anchor li {
    width: 100%;
    margin-top: 15px;
  }
  #btn-section ul.link-anchor li a {
    font-size: 14px;
    background-size: 14px;
  }
}
@media screen and (max-width: 480px) {}
@media screen and (max-width: 399px) {
  #btn-section ul.link-anchor li a {
    padding: 12px 22px 10px 0;
    font-size: 12px;
  }
}

/* production_timeline1
=========================================================================================== */
ul.production_timeline1 li:nth-of-type(1n) {width: 24%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline1 li:nth-of-type(2n) {width: 12%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline1 li:nth-of-type(3n) {width: 52%; background-color: #ca6927; margin: 10px 5px;}
ul.production_timeline1 li:nth-of-type(4n) {width: 10%; background-color: #c63c40; margin: 10px 0 10px 5px;}
ul.production_timeline1 li:nth-of-type(5n) {
	background: #c63c40;
    height: calc(tan(60deg) * 34px / 2);
    width: 2%;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin: 10px -1px;
}
@media screen and (max-width: 399px) {
ul.production_timeline1 li:nth-of-type(1n) {margin: 10px 2px;}
ul.production_timeline1 li:nth-of-type(2n) {margin: 10px 2px;}
ul.production_timeline1 li:nth-of-type(3n) {margin: 10px 2px;}
ul.production_timeline1 li:nth-of-type(4n) {margin: 10px 0 10px 2px;}
ul.production_timeline1 li:nth-of-type(5n) {
    height: calc(tan(30deg) * 34px / 2);
	margin: 10px 0px 10px -1px;
}	
}
/* production_timeline2
=========================================================================================== */
ul.production_timeline2 li:nth-of-type(1n) {width: 20%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline2 li:nth-of-type(2n) {width: 28%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline2 li:nth-of-type(3n) {width: 42%; background-color: #ca6927; margin: 10px 5px;}
ul.production_timeline2 li:nth-of-type(4n) {width: 10%; background-color: #c63c40; margin: 10px 0 10px 5px;}
ul.production_timeline2 li:nth-of-type(5n) {
	background: #c63c40;
    height: calc(tan(60deg) * 34px / 2);
    width: 2%;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin: 10px -1px;
}
@media screen and (max-width: 399px) {
ul.production_timeline2 li:nth-of-type(1n) {margin: 10px 2px;}
ul.production_timeline2 li:nth-of-type(2n) {margin: 10px 2px;}
ul.production_timeline2 li:nth-of-type(3n) {margin: 10px 2px;}
ul.production_timeline2 li:nth-of-type(4n) {margin: 10px 0 10px 2px;}
ul.production_timeline2 li:nth-of-type(5n) {
    height: calc(tan(30deg) * 34px / 2);
	margin: 10px 0px 10px -1px;
}	
}

/* production_timeline3
=========================================================================================== */
ul.production_timeline3 li:nth-of-type(1n) {width: 42%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline3 li:nth-of-type(2n) {width: 46%; background-color: #ca6927; margin: 10px 5px;}
ul.production_timeline3 li:nth-of-type(3n) {width: 10%; background-color: #c63c40; margin: 10px 0 10px 5px;}
ul.production_timeline3 li:nth-of-type(4n) {
	background: #c63c40;
    height: calc(tan(60deg) * 34px / 2);
    width: 2%;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin: 10px -1px;
}
@media screen and (max-width: 399px) {
ul.production_timeline3 li:nth-of-type(1n) {margin: 10px 2px;}
ul.production_timeline3 li:nth-of-type(2n) {margin: 10px 2px;}
ul.production_timeline3 li:nth-of-type(3n) {margin: 10px 0 10px 2px;}
ul.production_timeline3 li:nth-of-type(4n) {
    height: calc(tan(30deg) * 34px / 2);
	margin: 10px 0px 10px -1px;
}	
}

/* production_timeline4
=========================================================================================== */
ul.production_timeline4 li:nth-of-type(1n) {width: 25%; background-color: #4a6f90; margin: 10px 5px;}
ul.production_timeline4 li:nth-of-type(2n) {width: 63%; background-color: #ca6927; margin: 10px 5px;}
ul.production_timeline4 li:nth-of-type(3n) {width: 10%; background-color: #c63c40; margin: 10px 0 10px 5px;}
ul.production_timeline4 li:nth-of-type(4n) {
	background: #c63c40;
    height: calc(tan(60deg) * 34px / 2);
    width: 2%;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin: 10px -1px;
}
@media screen and (max-width: 399px) {
ul.production_timeline4 li:nth-of-type(1n) {margin: 10px 2px;}
ul.production_timeline4 li:nth-of-type(2n) {margin: 10px 2px;}
ul.production_timeline4 li:nth-of-type(3n) {margin: 10px 0 10px 2px;}
ul.production_timeline4 li:nth-of-type(4n) {
    height: calc(tan(30deg) * 34px / 2);
	margin: 10px 0px 10px -1px;
}	
}

@media screen and (max-width: 800px) {
dl.schedule ul li {font-size: 13px;}
}
@media screen and (max-width: 579px) {
dl.schedule ul li {font-size: 10px;}
}
@media screen and (max-width: 399px) {
dl.schedule ul li {font-size: 7px;}
}

/* recreation
=========================================================================================== */
.rec_menu {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 1em;
}
.rec_menu > li {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  justify-content: center;
  background-color: #f4f0eb;
  width: 49%;
  margin: 0 0.5% 1%;
}
@media screen and (max-width: 480px){
.rec_menu > li {
    width: 100%;
}	
}
.rec_box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.rec_box > li {
  width: 48%;
  margin: 1%;
}
@media screen and (max-width: 480px){
.rec_box > li {
    /*width: 100%;*/
}	
}
.rec_box_title {
	font-weight: bold;
}
.rec_box_text {
	font-size: 80%;
}
.rec_box_red {
	color: #c4570f;
}

/* OTHER================================ */
.textRed {color: #b1000e;}
.box_movie {
  padding: 7px;
  background-color: #000;
  box-sizing: border-box;
  border-radius: 5px;
}
.box_movie2 {
  outline: 8px solid #000;
  outline-offset: -7px;
  border-radius: 5px;
}
.box_movie2 img {
  border-radius: 5px;
}
.box_photo1 {
border: solid #000 1px;
}
.pb1em {padding-bottom: 1em;}
@media screen and (max-width: 767px){
  .pb1em {padding-bottom: 0;}
}
#ceremony-section table th {
  text-align: center;
}
#movie-section .bg_brown p {
  margin-bottom: 0;
}

.phote_text {
	text-align: center;
  margin-top: 7px;
}

#subheading h3 {
  position: relative;
	background: #eee8e0;
    color: #998675;
    padding: 0.5em 0em;
	font-size: 32px;
	font-family: "Ÿà–¾’©", YuMincho, "HG–¾’©E", "ƒqƒ‰ƒMƒm–¾’© ProN W3", "Hiragino Mincho ProN", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
}
#subheading h3:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: #998675;
}
#subheading h3 span {
  position: relative;
  padding: 0 1em;
  background: #eee8e0;
}
@media screen and (max-width: 767px) {
#subheading h3 {
	font-size: 18px;
}	
}

.mt20 {
	margin-top: 20px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb40 {
	margin-bottom: 40px;
}

/* MovieLink */
.ImgOnlyStyle .MovieLink::before {
    width: 52px!important;
    height: 52px!important;
    margin: -26px 0 0 -26px!important;
    box-shadow: 0 0 12px rgb(0 0 0 / 55%)!important;
}
.ImgOnlyStyle .MovieLink::after {
    width: 48px!important;
    height: 48px!important;
    margin: -24px 0 0 -24px!important;
}
.ImgOnlyStyle .MovieLink span::after {
    margin: -12px 0 0 -3px!important;
    border-left: solid 12px #fff!important;
    border-top: solid 12px transparent!important;
    border-bottom: solid 12px transparent!important;
}

 .img-grid01 {
display: grid;
/*grid-template-columns: minmax(180px, 400px) 1fr 1fr;*/
grid-template-columns: minmax(180px, 400px) 1fr 1fr;
grid-template-rows: 1fr 1fr;
grid-column-gap: 12px;
grid-row-gap: 12px;
margin-bottom: 50px;
}
.div1 { grid-row:1/3;grid-column: 1/2; }
.div2 { grid-row:1/2;grid-column: 2/3; }
.div3 { grid-row: 1/2;grid-column: 3/4; }
.div4 {grid-row: 2/3;grid-column: 2/3; }
.div5 { grid-row:2/3;grid-column: 3/4; } 

@media (max-width: 994px) {
 .img-grid01 {
 grid-template-columns: 1fr 1fr 1fr;
 }
}

@media (max-width: 767px) {
  .img-grid01 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  }
  .div1,.div2,.div3,.div4,.div5 {
  grid-column: 1;
  grid-row: auto;
  }
}

.img-c13-pad01 {padding: 17px 0;}
@media (max-width: 994px) {
.img-c13-pad01 {padding: 0;}
}

#project-section dl.schedule dt.schedule_note {
  width: 100%;
}
.schedule .TextStyle2 {
  margin: 15px 0 0;
}
#project-section dl.schedule dt.schedule_note .TextStyle2 {
  margin-left: 3em;
  font-weight: normal;
  font-size:90%; 
}

.mgt0 {margin-top: 0 !important;}
